TPTP Problem File: DAT255^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : DAT255^1 : TPTP v8.2.0. Released v7.0.0.
% Domain   : Data Structures
% Problem  : Data structure for translators from streams to streams 65
% Version  : [Bla16] axioms : Especial.
% English  :

% Refs     : [BH+14] Blanchette et al. (2014), Truly Modular (Co)datatypes
%          : [RB15]  Reynolds & Blanchette (2015), A Decision Procedure for
%          : [Bla16] Blanchette (2016), Email to Geoff Sutcliffe
% Source   : [Bla16]
% Names    : stream_processor__65.p [Bla16]

% Status   : Theorem
% Rating   : 0.33 v8.1.0, 0.25 v7.5.0, 0.67 v7.2.0, 0.75 v7.1.0
% Syntax   : Number of formulae    :  339 ( 132 unt;  64 typ;   0 def)
%            Number of atoms       :  666 ( 256 equ;   0 cnn)
%            Maximal formula atoms :    9 (   2 avg)
%            Number of connectives : 5395 (  54   ~;   3   |;  36   &;4970   @)
%                                         (   0 <=>; 332  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   28 (  10 avg)
%            Number of types       :    6 (   5 usr)
%            Number of type conns  :  446 ( 446   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   62 (  59 usr;   4 con; 0-9 aty)
%            Number of variables   : 1527 (  43   ^;1343   !;  33   ?;1527   :)
%                                         ( 108  !>;   0  ?*;   0  @-;   0  @+)
% SPC      : TH1_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2016-07-13 14:39:16.277
%------------------------------------------------------------------------------
%----Could-be-implicit typings (11)
thf(ty_t_Stream__Processor__Mirabelle__rrumbueyrq_Osp_092_060_094sub_062_092_060nu_062,type,
    stream1273403375_sp_nu: $tType > $tType > $tType ).

thf(ty_t_Stream__Processor__Mirabelle__rrumbueyrq_Osp_092_060_094sub_062_092_060mu_062,type,
    stream901396144_sp_mu: $tType > $tType > $tType > $tType ).

thf(ty_t_Product__Type_Oprod,type,
    product_prod: $tType > $tType > $tType ).

thf(ty_t_Stream_Ostream,type,
    stream: $tType > $tType ).

thf(ty_t_Set_Oset,type,
    set: $tType > $tType ).

thf(ty_t_Nat_Onat,type,
    nat: $tType ).

thf(ty_t_itself,type,
    itself: $tType > $tType ).

thf(ty_tf_d,type,
    d: $tType ).

thf(ty_tf_c,type,
    c: $tType ).

thf(ty_tf_b,type,
    b: $tType ).

thf(ty_tf_a,type,
    a: $tType ).

%----Explicit typings (53)
thf(sy_cl_HOL_Otype,type,
    type: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Oord,type,
    ord: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Otop,type,
    top: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Oorder__top,type,
    order_top: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Complete__Lattices_OSup,type,
    complete_Sup: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Complete__Lattices_Ocomplete__lattice,type,
    comple187826305attice: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_c_BNF__Cardinal__Order__Relation_OrelChain,type,
    bNF_Ca1785829860lChain: 
      !>[A: $tType,B: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( A > B ) > $o ) ).

thf(sy_c_BNF__Def_OfstOp,type,
    bNF_fstOp: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > $o ) > ( B > C > $o ) > ( product_prod @ A @ C ) > ( product_prod @ A @ B ) ) ).

thf(sy_c_BNF__Def_Opick__middlep,type,
    bNF_pick_middlep: 
      !>[B: $tType,A: $tType,C: $tType] : ( ( B > A > $o ) > ( A > C > $o ) > B > C > A ) ).

thf(sy_c_BNF__Def_OsndOp,type,
    bNF_sndOp: 
      !>[C: $tType,A: $tType,B: $tType] : ( ( C > A > $o ) > ( A > B > $o ) > ( product_prod @ C @ B ) > ( product_prod @ A @ B ) ) ).

thf(sy_c_Complete__Lattices_OSup__class_OSup,type,
    complete_Sup_Sup: 
      !>[A: $tType] : ( ( set @ A ) > A ) ).

thf(sy_c_Fun_Oinj__on,type,
    inj_on: 
      !>[A: $tType,B: $tType] : ( ( A > B ) > ( set @ A ) > $o ) ).

thf(sy_c_Fun_Othe__inv__into,type,
    the_inv_into: 
      !>[A: $tType,B: $tType] : ( ( set @ A ) > ( A > B ) > B > A ) ).

thf(sy_c_Groups_Ouminus__class_Ouminus,type,
    uminus_uminus: 
      !>[A: $tType] : ( A > A ) ).

thf(sy_c_Orderings_Oord__class_Oless__eq,type,
    ord_less_eq: 
      !>[A: $tType] : ( A > A > $o ) ).

thf(sy_c_Orderings_Otop__class_Otop,type,
    top_top: 
      !>[A: $tType] : A ).

thf(sy_c_Product__Type_OPair,type,
    product_Pair: 
      !>[A: $tType,B: $tType] : ( A > B > ( product_prod @ A @ B ) ) ).

thf(sy_c_Product__Type_Oapfst,type,
    product_apfst: 
      !>[A: $tType,C: $tType,B: $tType] : ( ( A > C ) > ( product_prod @ A @ B ) > ( product_prod @ C @ B ) ) ).

thf(sy_c_Product__Type_Oapsnd,type,
    product_apsnd: 
      !>[B: $tType,C: $tType,A: $tType] : ( ( B > C ) > ( product_prod @ A @ B ) > ( product_prod @ A @ C ) ) ).

thf(sy_c_Product__Type_Ocurry,type,
    product_curry: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( ( product_prod @ A @ B ) > C ) > A > B > C ) ).

thf(sy_c_Product__Type_Ointernal__case__prod,type,
    produc2004651681e_prod: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > C ) > ( product_prod @ A @ B ) > C ) ).

thf(sy_c_Product__Type_Omap__prod,type,
    product_map_prod: 
      !>[A: $tType,C: $tType,B: $tType,D: $tType] : ( ( A > C ) > ( B > D ) > ( product_prod @ A @ B ) > ( product_prod @ C @ D ) ) ).

thf(sy_c_Product__Type_Oold_Obool_Orec__bool,type,
    product_rec_bool: 
      !>[T: $tType] : ( T > T > $o > T ) ).

thf(sy_c_Product__Type_Oold_Oprod_Orec__prod,type,
    product_rec_prod: 
      !>[A: $tType,B: $tType,T: $tType] : ( ( A > B > T ) > ( product_prod @ A @ B ) > T ) ).

thf(sy_c_Product__Type_Oprod_Ocase__prod,type,
    product_case_prod: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > C ) > ( product_prod @ A @ B ) > C ) ).

thf(sy_c_Product__Type_Oprod_Ofst,type,
    product_fst: 
      !>[A: $tType,B: $tType] : ( ( product_prod @ A @ B ) > A ) ).

thf(sy_c_Product__Type_Oprod_Osnd,type,
    product_snd: 
      !>[A: $tType,B: $tType] : ( ( product_prod @ A @ B ) > B ) ).

thf(sy_c_Product__Type_Oprod_Oswap,type,
    product_swap: 
      !>[A: $tType,B: $tType] : ( ( product_prod @ A @ B ) > ( product_prod @ B @ A ) ) ).

thf(sy_c_Pure_Otype,type,
    type2: 
      !>[A: $tType] : ( itself @ A ) ).

thf(sy_c_Set_OCollect,type,
    collect: 
      !>[A: $tType] : ( ( A > $o ) > ( set @ A ) ) ).

thf(sy_c_Set_Obind,type,
    bind: 
      !>[A: $tType,B: $tType] : ( ( set @ A ) > ( A > ( set @ B ) ) > ( set @ B ) ) ).

thf(sy_c_Set_Oimage,type,
    image: 
      !>[A: $tType,B: $tType] : ( ( A > B ) > ( set @ A ) > ( set @ B ) ) ).

thf(sy_c_Set_Ovimage,type,
    vimage: 
      !>[A: $tType,B: $tType] : ( ( A > B ) > ( set @ B ) > ( set @ A ) ) ).

thf(sy_c_Stream__Processor__Mirabelle__rrumbueyrq_Orun_092_060_094sub_062_092_060mu_062,type,
    stream5064451run_mu: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( stream901396144_sp_mu @ A @ B @ C ) > ( stream @ A ) > ( product_prod @ ( product_prod @ B @ C ) @ ( stream @ A ) ) ) ).

thf(sy_c_Stream__Processor__Mirabelle__rrumbueyrq_Osp_092_060_094sub_062_092_060mu_062_OGet,type,
    stream1294929701mu_Get: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( A > ( stream901396144_sp_mu @ A @ B @ C ) ) > ( stream901396144_sp_mu @ A @ B @ C ) ) ).

thf(sy_c_Stream__Processor__Mirabelle__rrumbueyrq_Osp_092_060_094sub_062_092_060mu_062_OPut,type,
    stream1370332830mu_Put: 
      !>[B: $tType,C: $tType,A: $tType] : ( B > C > ( stream901396144_sp_mu @ A @ B @ C ) ) ).

thf(sy_c_Stream__Processor__Mirabelle__rrumbueyrq_Osp_092_060_094sub_062_092_060mu_062_Ocase__sp_092_060_094sub_062_092_060mu_062,type,
    stream160000856_sp_mu: 
      !>[A: $tType,B: $tType,C: $tType,D: $tType] : ( ( ( A > ( stream901396144_sp_mu @ A @ B @ C ) ) > D ) > ( B > C > D ) > ( stream901396144_sp_mu @ A @ B @ C ) > D ) ).

thf(sy_c_Stream__Processor__Mirabelle__rrumbueyrq_Osp_092_060_094sub_062_092_060mu_062_Opred__sp_092_060_094sub_062_092_060mu_062,type,
    stream123009735_sp_mu: 
      !>[A: $tType,B: $tType,E: $tType] : ( ( A > $o ) > ( B > $o ) > ( stream901396144_sp_mu @ E @ A @ B ) > $o ) ).

thf(sy_c_Stream__Processor__Mirabelle__rrumbueyrq_Osp_092_060_094sub_062_092_060mu_062_Orec__sp_092_060_094sub_062_092_060mu_062,type,
    stream674629690_sp_mu: 
      !>[A: $tType,B: $tType,C: $tType,G: $tType] : ( ( ( A > ( product_prod @ ( stream901396144_sp_mu @ A @ B @ C ) @ G ) ) > G ) > ( B > C > G ) > ( stream901396144_sp_mu @ A @ B @ C ) > G ) ).

thf(sy_c_Stream__Processor__Mirabelle__rrumbueyrq_Osp_092_060_094sub_062_092_060mu_062_Orel__sp_092_060_094sub_062_092_060mu_062,type,
    stream1924447089_sp_mu: 
      !>[A: $tType,C: $tType,B: $tType,D: $tType,E: $tType] : ( ( A > C > $o ) > ( B > D > $o ) > ( stream901396144_sp_mu @ E @ A @ B ) > ( stream901396144_sp_mu @ E @ C @ D ) > $o ) ).

thf(sy_c_Stream__Processor__Mirabelle__rrumbueyrq_Osp_092_060_094sub_062_092_060mu_062_Oset1__sp_092_060_094sub_062_092_060mu_062,type,
    stream2074884121_sp_mu: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( stream901396144_sp_mu @ A @ B @ C ) > ( set @ B ) ) ).

thf(sy_c_Stream__Processor__Mirabelle__rrumbueyrq_Osp_092_060_094sub_062_092_060mu_062_Oset2__sp_092_060_094sub_062_092_060mu_062,type,
    stream1259315544_sp_mu: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( stream901396144_sp_mu @ A @ B @ C ) > ( set @ C ) ) ).

thf(sy_c_Stream__Processor__Mirabelle__rrumbueyrq_Osub,type,
    stream152839592le_sub: 
      !>[A: $tType,B: $tType,C: $tType] : ( set @ ( product_prod @ ( stream901396144_sp_mu @ A @ B @ C ) @ ( stream901396144_sp_mu @ A @ B @ C ) ) ) ).

thf(sy_c_Wellfounded_Olex__prod,type,
    lex_prod: 
      !>[A: $tType,B: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( set @ ( product_prod @ B @ B ) ) > ( set @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) ) ) ).

thf(sy_c_Wellfounded_Omeasure,type,
    measure: 
      !>[A: $tType] : ( ( A > nat ) > ( set @ ( product_prod @ A @ A ) ) ) ).

thf(sy_c_Wellfounded_Owf,type,
    wf: 
      !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > $o ) ).

thf(sy_c_Wfrec_Osame__fst,type,
    same_fst: 
      !>[A: $tType,B: $tType] : ( ( A > $o ) > ( A > ( set @ ( product_prod @ B @ B ) ) ) > ( set @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) ) ) ).

thf(sy_c_Zorn_OChains,type,
    chains: 
      !>[A: $tType] : ( ( set @ ( product_prod @ A @ A ) ) > ( set @ ( set @ A ) ) ) ).

thf(sy_c_Zorn_Ochain__subset,type,
    chain_subset: 
      !>[A: $tType] : ( ( set @ ( set @ A ) ) > $o ) ).

thf(sy_c_Zorn_Ochains,type,
    chains2: 
      !>[A: $tType] : ( ( set @ ( set @ A ) ) > ( set @ ( set @ ( set @ A ) ) ) ) ).

thf(sy_c_member,type,
    member: 
      !>[A: $tType] : ( A > ( set @ A ) > $o ) ).

thf(sy_v_P,type,
    p: $o ).

thf(sy_v_x,type,
    x: product_prod @ ( stream901396144_sp_mu @ a @ b @ c ) @ ( stream901396144_sp_mu @ d @ a @ ( stream1273403375_sp_nu @ d @ a ) ) ).

%----Relevant facts (256)
thf(fact_0_sp_092_060_094sub_062_092_060mu_062_Oinject_I1_J,axiom,
    ! [C: $tType,B: $tType,A: $tType,X1: A > ( stream901396144_sp_mu @ A @ B @ C ),Y1: A > ( stream901396144_sp_mu @ A @ B @ C )] :
      ( ( ( stream1294929701mu_Get @ A @ B @ C @ X1 )
        = ( stream1294929701mu_Get @ A @ B @ C @ Y1 ) )
      = ( X1 = Y1 ) ) ).

% sp\<^sub>\<mu>.inject(1)
thf(fact_1_sp_092_060_094sub_062_092_060mu_062_Oinject_I2_J,axiom,
    ! [A: $tType,B: $tType,C: $tType,X21: B,X22: C,Y21: B,Y22: C] :
      ( ( ( stream1370332830mu_Put @ B @ C @ A @ X21 @ X22 )
        = ( stream1370332830mu_Put @ B @ C @ A @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% sp\<^sub>\<mu>.inject(2)
thf(fact_2_sp_092_060_094sub_062_092_060mu_062_Odistinct_I1_J,axiom,
    ! [B: $tType,A: $tType,C: $tType,X1: A > ( stream901396144_sp_mu @ A @ B @ C ),X21: B,X22: C] :
      ( ( stream1294929701mu_Get @ A @ B @ C @ X1 )
     != ( stream1370332830mu_Put @ B @ C @ A @ X21 @ X22 ) ) ).

% sp\<^sub>\<mu>.distinct(1)
thf(fact_3_sp_092_060_094sub_062_092_060mu_062_Oexhaust,axiom,
    ! [B: $tType,A: $tType,C: $tType,Y: stream901396144_sp_mu @ A @ B @ C] :
      ( ! [X12: A > ( stream901396144_sp_mu @ A @ B @ C )] :
          ( Y
         != ( stream1294929701mu_Get @ A @ B @ C @ X12 ) )
     => ~ ! [X212: B,X222: C] :
            ( Y
           != ( stream1370332830mu_Put @ B @ C @ A @ X212 @ X222 ) ) ) ).

% sp\<^sub>\<mu>.exhaust
thf(fact_4_subI,axiom,
    ! [C: $tType,B: $tType,A: $tType,F: A > ( stream901396144_sp_mu @ A @ B @ C ),A2: A] : ( member @ ( product_prod @ ( stream901396144_sp_mu @ A @ B @ C ) @ ( stream901396144_sp_mu @ A @ B @ C ) ) @ ( product_Pair @ ( stream901396144_sp_mu @ A @ B @ C ) @ ( stream901396144_sp_mu @ A @ B @ C ) @ ( F @ A2 ) @ ( stream1294929701mu_Get @ A @ B @ C @ F ) ) @ ( stream152839592le_sub @ A @ B @ C ) ) ).

% subI
thf(fact_5_prod_Oinject,axiom,
    ! [A: $tType,B: $tType,X1: A,X2: B,Y1: A,Y2: B] :
      ( ( ( product_Pair @ A @ B @ X1 @ X2 )
        = ( product_Pair @ A @ B @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_6_old_Oprod_Oinject,axiom,
    ! [A: $tType,B: $tType,A2: A,B2: B,A3: A,B3: B] :
      ( ( ( product_Pair @ A @ B @ A2 @ B2 )
        = ( product_Pair @ A @ B @ A3 @ B3 ) )
      = ( ( A2 = A3 )
        & ( B2 = B3 ) ) ) ).

% old.prod.inject
thf(fact_7_run_092_060_094sub_062_092_060mu_062_Osimps_I2_J,axiom,
    ! [C: $tType,B: $tType,A: $tType,B2: B,Sp: C,S: stream @ A] :
      ( ( stream5064451run_mu @ A @ B @ C @ ( stream1370332830mu_Put @ B @ C @ A @ B2 @ Sp ) @ S )
      = ( product_Pair @ ( product_prod @ B @ C ) @ ( stream @ A ) @ ( product_Pair @ B @ C @ B2 @ Sp ) @ S ) ) ).

% run\<^sub>\<mu>.simps(2)
thf(fact_8_surj__pair,axiom,
    ! [A: $tType,B: $tType,P: product_prod @ A @ B] :
    ? [X: A,Y3: B] :
      ( P
      = ( product_Pair @ A @ B @ X @ Y3 ) ) ).

% surj_pair
thf(fact_9_prod__cases,axiom,
    ! [B: $tType,A: $tType,P2: ( product_prod @ A @ B ) > $o,P: product_prod @ A @ B] :
      ( ! [A4: A,B4: B] : ( P2 @ ( product_Pair @ A @ B @ A4 @ B4 ) )
     => ( P2 @ P ) ) ).

% prod_cases
thf(fact_10_Pair__inject,axiom,
    ! [A: $tType,B: $tType,A2: A,B2: B,A3: A,B3: B] :
      ( ( ( product_Pair @ A @ B @ A2 @ B2 )
        = ( product_Pair @ A @ B @ A3 @ B3 ) )
     => ~ ( ( A2 = A3 )
         => ( B2 != B3 ) ) ) ).

% Pair_inject
thf(fact_11_prod__cases3,axiom,
    ! [A: $tType,B: $tType,C: $tType,Y: product_prod @ A @ ( product_prod @ B @ C )] :
      ~ ! [A4: A,B4: B,C2: C] :
          ( Y
         != ( product_Pair @ A @ ( product_prod @ B @ C ) @ A4 @ ( product_Pair @ B @ C @ B4 @ C2 ) ) ) ).

% prod_cases3
thf(fact_12_prod__cases4,axiom,
    ! [A: $tType,B: $tType,C: $tType,D: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) )] :
      ~ ! [A4: A,B4: B,C2: C,D2: D] :
          ( Y
         != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ D ) @ B4 @ ( product_Pair @ C @ D @ C2 @ D2 ) ) ) ) ).

% prod_cases4
thf(fact_13_prod__cases5,axiom,
    ! [A: $tType,B: $tType,C: $tType,D: $tType,E: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) )] :
      ~ ! [A4: A,B4: B,C2: C,D2: D,E2: E] :
          ( Y
         != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ E ) @ C2 @ ( product_Pair @ D @ E @ D2 @ E2 ) ) ) ) ) ).

% prod_cases5
thf(fact_14_prod__cases6,axiom,
    ! [A: $tType,B: $tType,C: $tType,D: $tType,E: $tType,F2: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F2 ) ) ) )] :
      ~ ! [A4: A,B4: B,C2: C,D2: D,E2: E,F3: F2] :
          ( Y
         != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F2 ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F2 ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ F2 ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ F2 ) @ D2 @ ( product_Pair @ E @ F2 @ E2 @ F3 ) ) ) ) ) ) ).

% prod_cases6
thf(fact_15_prod__cases7,axiom,
    ! [A: $tType,B: $tType,C: $tType,D: $tType,E: $tType,F2: $tType,G: $tType,Y: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) ) ) )] :
      ~ ! [A4: A,B4: B,C2: C,D2: D,E2: E,F3: F2,G2: G] :
          ( Y
         != ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) @ D2 @ ( product_Pair @ E @ ( product_prod @ F2 @ G ) @ E2 @ ( product_Pair @ F2 @ G @ F3 @ G2 ) ) ) ) ) ) ) ).

% prod_cases7
thf(fact_16_old_Oprod_Oinducts,axiom,
    ! [B: $tType,A: $tType,P2: ( product_prod @ A @ B ) > $o,Prod: product_prod @ A @ B] :
      ( ! [A4: A,B4: B] : ( P2 @ ( product_Pair @ A @ B @ A4 @ B4 ) )
     => ( P2 @ Prod ) ) ).

% old.prod.inducts
thf(fact_17_old_Oprod_Oexhaust,axiom,
    ! [A: $tType,B: $tType,Y: product_prod @ A @ B] :
      ~ ! [A4: A,B4: B] :
          ( Y
         != ( product_Pair @ A @ B @ A4 @ B4 ) ) ).

% old.prod.exhaust
thf(fact_18_prod__induct7,axiom,
    ! [G: $tType,F2: $tType,E: $tType,D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) ) ) ) ) > $o,X3: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) ) ) )] :
      ( ! [A4: A,B4: B,C2: C,D2: D,E2: E,F3: F2,G2: G] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ ( product_prod @ F2 @ G ) ) @ D2 @ ( product_Pair @ E @ ( product_prod @ F2 @ G ) @ E2 @ ( product_Pair @ F2 @ G @ F3 @ G2 ) ) ) ) ) ) )
     => ( P2 @ X3 ) ) ).

% prod_induct7
thf(fact_19_prod__induct6,axiom,
    ! [F2: $tType,E: $tType,D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F2 ) ) ) ) ) > $o,X3: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F2 ) ) ) )] :
      ( ! [A4: A,B4: B,C2: C,D2: D,E2: E,F3: F2] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F2 ) ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ ( product_prod @ E @ F2 ) ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ ( product_prod @ E @ F2 ) ) @ C2 @ ( product_Pair @ D @ ( product_prod @ E @ F2 ) @ D2 @ ( product_Pair @ E @ F2 @ E2 @ F3 ) ) ) ) ) )
     => ( P2 @ X3 ) ) ).

% prod_induct6
thf(fact_20_prod__induct5,axiom,
    ! [E: $tType,D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) ) ) > $o,X3: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) )] :
      ( ! [A4: A,B4: B,C2: C,D2: D,E2: E] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ ( product_prod @ D @ E ) ) @ B4 @ ( product_Pair @ C @ ( product_prod @ D @ E ) @ C2 @ ( product_Pair @ D @ E @ D2 @ E2 ) ) ) ) )
     => ( P2 @ X3 ) ) ).

% prod_induct5
thf(fact_21_prod__induct4,axiom,
    ! [D: $tType,C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) ) ) > $o,X3: product_prod @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) )] :
      ( ! [A4: A,B4: B,C2: C,D2: D] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ ( product_prod @ C @ D ) ) @ A4 @ ( product_Pair @ B @ ( product_prod @ C @ D ) @ B4 @ ( product_Pair @ C @ D @ C2 @ D2 ) ) ) )
     => ( P2 @ X3 ) ) ).

% prod_induct4
thf(fact_22_prod__induct3,axiom,
    ! [C: $tType,B: $tType,A: $tType,P2: ( product_prod @ A @ ( product_prod @ B @ C ) ) > $o,X3: product_prod @ A @ ( product_prod @ B @ C )] :
      ( ! [A4: A,B4: B,C2: C] : ( P2 @ ( product_Pair @ A @ ( product_prod @ B @ C ) @ A4 @ ( product_Pair @ B @ C @ B4 @ C2 ) ) )
     => ( P2 @ X3 ) ) ).

% prod_induct3
thf(fact_23_old_Oprod_Orec,axiom,
    ! [A: $tType,T: $tType,B: $tType,F1: A > B > T,A2: A,B2: B] :
      ( ( product_rec_prod @ A @ B @ T @ F1 @ ( product_Pair @ A @ B @ A2 @ B2 ) )
      = ( F1 @ A2 @ B2 ) ) ).

% old.prod.rec
thf(fact_24_internal__case__prod__conv,axiom,
    ! [B: $tType,A: $tType,C: $tType,C3: B > C > A,A2: B,B2: C] :
      ( ( produc2004651681e_prod @ B @ C @ A @ C3 @ ( product_Pair @ B @ C @ A2 @ B2 ) )
      = ( C3 @ A2 @ B2 ) ) ).

% internal_case_prod_conv
thf(fact_25_ssubst__Pair__rhs,axiom,
    ! [B: $tType,A: $tType,R: A,S: B,R2: set @ ( product_prod @ A @ B ),S2: B] :
      ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ R @ S ) @ R2 )
     => ( ( S2 = S )
       => ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ R @ S2 ) @ R2 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_26_curry__conv,axiom,
    ! [A: $tType,C: $tType,B: $tType] :
      ( ( product_curry @ B @ C @ A )
      = ( ^ [F4: ( product_prod @ B @ C ) > A,A5: B,B5: C] : ( F4 @ ( product_Pair @ B @ C @ A5 @ B5 ) ) ) ) ).

% curry_conv
thf(fact_27_sp_092_060_094sub_062_092_060mu_062_Osimps_I6_J,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,F1: ( A > ( stream901396144_sp_mu @ A @ B @ C ) ) > D,F22: B > C > D,X21: B,X22: C] :
      ( ( stream160000856_sp_mu @ A @ B @ C @ D @ F1 @ F22 @ ( stream1370332830mu_Put @ B @ C @ A @ X21 @ X22 ) )
      = ( F22 @ X21 @ X22 ) ) ).

% sp\<^sub>\<mu>.simps(6)
thf(fact_28_sp_092_060_094sub_062_092_060mu_062_Osimps_I5_J,axiom,
    ! [D: $tType,C: $tType,B: $tType,A: $tType,F1: ( A > ( stream901396144_sp_mu @ A @ B @ C ) ) > D,F22: B > C > D,X1: A > ( stream901396144_sp_mu @ A @ B @ C )] :
      ( ( stream160000856_sp_mu @ A @ B @ C @ D @ F1 @ F22 @ ( stream1294929701mu_Get @ A @ B @ C @ X1 ) )
      = ( F1 @ X1 ) ) ).

% sp\<^sub>\<mu>.simps(5)
thf(fact_29_curryI,axiom,
    ! [A: $tType,B: $tType,F: ( product_prod @ A @ B ) > $o,A2: A,B2: B] :
      ( ( F @ ( product_Pair @ A @ B @ A2 @ B2 ) )
     => ( product_curry @ A @ B @ $o @ F @ A2 @ B2 ) ) ).

% curryI
thf(fact_30_sp_092_060_094sub_062_092_060mu_062_Osimps_I8_J,axiom,
    ! [A: $tType,B: $tType,G: $tType,C: $tType,F1: ( A > ( product_prod @ ( stream901396144_sp_mu @ A @ B @ C ) @ G ) ) > G,F22: B > C > G,X21: B,X22: C] :
      ( ( stream674629690_sp_mu @ A @ B @ C @ G @ F1 @ F22 @ ( stream1370332830mu_Put @ B @ C @ A @ X21 @ X22 ) )
      = ( F22 @ X21 @ X22 ) ) ).

% sp\<^sub>\<mu>.simps(8)
thf(fact_31_sp_092_060_094sub_062_092_060mu_062_Opred__inject_I2_J,axiom,
    ! [A: $tType,B: $tType,C: $tType,P1: B > $o,P22: C > $o,A2: B,Aa: C] :
      ( ( stream123009735_sp_mu @ B @ C @ A @ P1 @ P22 @ ( stream1370332830mu_Put @ B @ C @ A @ A2 @ Aa ) )
      = ( ( P1 @ A2 )
        & ( P22 @ Aa ) ) ) ).

% sp\<^sub>\<mu>.pred_inject(2)
thf(fact_32_swap__simp,axiom,
    ! [A: $tType,B: $tType,X3: B,Y: A] :
      ( ( product_swap @ B @ A @ ( product_Pair @ B @ A @ X3 @ Y ) )
      = ( product_Pair @ A @ B @ Y @ X3 ) ) ).

% swap_simp
thf(fact_33_swap__swap,axiom,
    ! [B: $tType,A: $tType,P: product_prod @ A @ B] :
      ( ( product_swap @ B @ A @ ( product_swap @ A @ B @ P ) )
      = P ) ).

% swap_swap
thf(fact_34_curryD,axiom,
    ! [A: $tType,B: $tType,F: ( product_prod @ A @ B ) > $o,A2: A,B2: B] :
      ( ( product_curry @ A @ B @ $o @ F @ A2 @ B2 )
     => ( F @ ( product_Pair @ A @ B @ A2 @ B2 ) ) ) ).

% curryD
thf(fact_35_curryE,axiom,
    ! [A: $tType,B: $tType,F: ( product_prod @ A @ B ) > $o,A2: A,B2: B] :
      ( ( product_curry @ A @ B @ $o @ F @ A2 @ B2 )
     => ( F @ ( product_Pair @ A @ B @ A2 @ B2 ) ) ) ).

% curryE
thf(fact_36_pair__in__swap__image,axiom,
    ! [A: $tType,B: $tType,Y: A,X3: B,A6: set @ ( product_prod @ B @ A )] :
      ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ Y @ X3 ) @ ( image @ ( product_prod @ B @ A ) @ ( product_prod @ A @ B ) @ ( product_swap @ B @ A ) @ A6 ) )
      = ( member @ ( product_prod @ B @ A ) @ ( product_Pair @ B @ A @ X3 @ Y ) @ A6 ) ) ).

% pair_in_swap_image
thf(fact_37_sp_092_060_094sub_062_092_060mu_062_Orel__distinct_I2_J,axiom,
    ! [B: $tType,A: $tType,D: $tType,C: $tType,G: $tType,R1: A > C > $o,R22: B > D > $o,Y21: A,Y22: B,X1: G > ( stream901396144_sp_mu @ G @ C @ D )] :
      ~ ( stream1924447089_sp_mu @ A @ C @ B @ D @ G @ R1 @ R22 @ ( stream1370332830mu_Put @ A @ B @ G @ Y21 @ Y22 ) @ ( stream1294929701mu_Get @ G @ C @ D @ X1 ) ) ).

% sp\<^sub>\<mu>.rel_distinct(2)
thf(fact_38_sp_092_060_094sub_062_092_060mu_062_Orel__distinct_I1_J,axiom,
    ! [B: $tType,C: $tType,E: $tType,A: $tType,F2: $tType,R1: B > E > $o,R22: C > F2 > $o,X1: A > ( stream901396144_sp_mu @ A @ B @ C ),Y21: E,Y22: F2] :
      ~ ( stream1924447089_sp_mu @ B @ E @ C @ F2 @ A @ R1 @ R22 @ ( stream1294929701mu_Get @ A @ B @ C @ X1 ) @ ( stream1370332830mu_Put @ E @ F2 @ A @ Y21 @ Y22 ) ) ).

% sp\<^sub>\<mu>.rel_distinct(1)
thf(fact_39_internal__case__prod__def,axiom,
    ! [C: $tType,B: $tType,A: $tType] :
      ( ( produc2004651681e_prod @ A @ B @ C )
      = ( product_case_prod @ A @ B @ C ) ) ).

% internal_case_prod_def
thf(fact_40_wf__sub,axiom,
    ! [C: $tType,B: $tType,A: $tType] : ( wf @ ( stream901396144_sp_mu @ A @ B @ C ) @ ( stream152839592le_sub @ A @ B @ C ) ) ).

% wf_sub
thf(fact_41_apsnd__conv,axiom,
    ! [A: $tType,B: $tType,C: $tType,F: C > B,X3: A,Y: C] :
      ( ( product_apsnd @ C @ B @ A @ F @ ( product_Pair @ A @ C @ X3 @ Y ) )
      = ( product_Pair @ A @ B @ X3 @ ( F @ Y ) ) ) ).

% apsnd_conv
thf(fact_42_old_Obool_Osimps_I5_J,axiom,
    ! [T: $tType,F1: T,F22: T] :
      ( ( product_rec_bool @ T @ F1 @ F22 @ $true )
      = F1 ) ).

% old.bool.simps(5)
thf(fact_43_old_Obool_Osimps_I6_J,axiom,
    ! [T: $tType,F1: T,F22: T] :
      ( ( product_rec_bool @ T @ F1 @ F22 @ $false )
      = F22 ) ).

% old.bool.simps(6)
thf(fact_44_apfst__conv,axiom,
    ! [C: $tType,A: $tType,B: $tType,F: C > A,X3: C,Y: B] :
      ( ( product_apfst @ C @ A @ B @ F @ ( product_Pair @ C @ B @ X3 @ Y ) )
      = ( product_Pair @ A @ B @ ( F @ X3 ) @ Y ) ) ).

% apfst_conv
thf(fact_45_mem__Collect__eq,axiom,
    ! [A: $tType,A2: A,P2: A > $o] :
      ( ( member @ A @ A2 @ ( collect @ A @ P2 ) )
      = ( P2 @ A2 ) ) ).

% mem_Collect_eq
thf(fact_46_Collect__mem__eq,axiom,
    ! [A: $tType,A6: set @ A] :
      ( ( collect @ A
        @ ^ [X4: A] : ( member @ A @ X4 @ A6 ) )
      = A6 ) ).

% Collect_mem_eq
thf(fact_47_Collect__cong,axiom,
    ! [A: $tType,P2: A > $o,Q: A > $o] :
      ( ! [X: A] :
          ( ( P2 @ X )
          = ( Q @ X ) )
     => ( ( collect @ A @ P2 )
        = ( collect @ A @ Q ) ) ) ).

% Collect_cong
thf(fact_48_ext,axiom,
    ! [B: $tType,A: $tType,F: A > B,G3: A > B] :
      ( ! [X: A] :
          ( ( F @ X )
          = ( G3 @ X ) )
     => ( F = G3 ) ) ).

% ext
thf(fact_49_curry__case__prod,axiom,
    ! [C: $tType,B: $tType,A: $tType,F: A > B > C] :
      ( ( product_curry @ A @ B @ C @ ( product_case_prod @ A @ B @ C @ F ) )
      = F ) ).

% curry_case_prod
thf(fact_50_case__prod__curry,axiom,
    ! [C: $tType,B: $tType,A: $tType,F: ( product_prod @ A @ B ) > C] :
      ( ( product_case_prod @ A @ B @ C @ ( product_curry @ A @ B @ C @ F ) )
      = F ) ).

% case_prod_curry
thf(fact_51_sp_092_060_094sub_062_092_060mu_062_Orel__eq,axiom,
    ! [B: $tType,A: $tType,G: $tType] :
      ( ( stream1924447089_sp_mu @ A @ A @ B @ B @ G
        @ ^ [Y4: A,Z: A] : Y4 = Z
        @ ^ [Y4: B,Z: B] : Y4 = Z )
      = ( ^ [Y4: stream901396144_sp_mu @ G @ A @ B,Z: stream901396144_sp_mu @ G @ A @ B] : Y4 = Z ) ) ).

% sp\<^sub>\<mu>.rel_eq
thf(fact_52_sp_092_060_094sub_062_092_060mu_062_Orel__refl,axiom,
    ! [D: $tType,C: $tType,G: $tType,R1a: C > C > $o,R2a: D > D > $o,X3: stream901396144_sp_mu @ G @ C @ D] :
      ( ! [X: C] : ( R1a @ X @ X )
     => ( ! [X: D] : ( R2a @ X @ X )
       => ( stream1924447089_sp_mu @ C @ C @ D @ D @ G @ R1a @ R2a @ X3 @ X3 ) ) ) ).

% sp\<^sub>\<mu>.rel_refl
thf(fact_53_apsnd__apfst__commute,axiom,
    ! [A: $tType,B: $tType,C: $tType,D: $tType,F: C > B,G3: D > A,P: product_prod @ D @ C] :
      ( ( product_apsnd @ C @ B @ A @ F @ ( product_apfst @ D @ A @ C @ G3 @ P ) )
      = ( product_apfst @ D @ A @ B @ G3 @ ( product_apsnd @ C @ B @ D @ F @ P ) ) ) ).

% apsnd_apfst_commute
thf(fact_54_mem__case__prodE,axiom,
    ! [B: $tType,A: $tType,C: $tType,Z2: A,C3: B > C > ( set @ A ),P: product_prod @ B @ C] :
      ( ( member @ A @ Z2 @ ( product_case_prod @ B @ C @ ( set @ A ) @ C3 @ P ) )
     => ~ ! [X: B,Y3: C] :
            ( ( P
              = ( product_Pair @ B @ C @ X @ Y3 ) )
           => ~ ( member @ A @ Z2 @ ( C3 @ X @ Y3 ) ) ) ) ).

% mem_case_prodE
thf(fact_55_old_Oprod_Ocase,axiom,
    ! [A: $tType,C: $tType,B: $tType,F: A > B > C,X1: A,X2: B] :
      ( ( product_case_prod @ A @ B @ C @ F @ ( product_Pair @ A @ B @ X1 @ X2 ) )
      = ( F @ X1 @ X2 ) ) ).

% old.prod.case
thf(fact_56_sp_092_060_094sub_062_092_060mu_062_Orel__intros_I2_J,axiom,
    ! [C: $tType,B: $tType,E: $tType,A: $tType,F2: $tType,R1: B > E > $o,X21: B,Y21: E,R22: C > F2 > $o,X22: C,Y22: F2] :
      ( ( R1 @ X21 @ Y21 )
     => ( ( R22 @ X22 @ Y22 )
       => ( stream1924447089_sp_mu @ B @ E @ C @ F2 @ A @ R1 @ R22 @ ( stream1370332830mu_Put @ B @ C @ A @ X21 @ X22 ) @ ( stream1370332830mu_Put @ E @ F2 @ A @ Y21 @ Y22 ) ) ) ) ).

% sp\<^sub>\<mu>.rel_intros(2)
thf(fact_57_sp_092_060_094sub_062_092_060mu_062_Orel__inject_I2_J,axiom,
    ! [A: $tType,E: $tType,B: $tType,C: $tType,F2: $tType,R1: B > E > $o,R22: C > F2 > $o,X21: B,X22: C,Y21: E,Y22: F2] :
      ( ( stream1924447089_sp_mu @ B @ E @ C @ F2 @ A @ R1 @ R22 @ ( stream1370332830mu_Put @ B @ C @ A @ X21 @ X22 ) @ ( stream1370332830mu_Put @ E @ F2 @ A @ Y21 @ Y22 ) )
      = ( ( R1 @ X21 @ Y21 )
        & ( R22 @ X22 @ Y22 ) ) ) ).

% sp\<^sub>\<mu>.rel_inject(2)
thf(fact_58_image__eqI,axiom,
    ! [A: $tType,B: $tType,B2: A,F: B > A,X3: B,A6: set @ B] :
      ( ( B2
        = ( F @ X3 ) )
     => ( ( member @ B @ X3 @ A6 )
       => ( member @ A @ B2 @ ( image @ B @ A @ F @ A6 ) ) ) ) ).

% image_eqI
thf(fact_59_wf__def,axiom,
    ! [A: $tType] :
      ( ( wf @ A )
      = ( ^ [R3: set @ ( product_prod @ A @ A )] :
          ! [P3: A > $o] :
            ( ! [X4: A] :
                ( ! [Y5: A] :
                    ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y5 @ X4 ) @ R3 )
                   => ( P3 @ Y5 ) )
               => ( P3 @ X4 ) )
           => ( ^ [P4: A > $o] :
                ! [X5: A] : ( P4 @ X5 )
              @ P3 ) ) ) ) ).

% wf_def
thf(fact_60_wfE__min,axiom,
    ! [A: $tType,R2: set @ ( product_prod @ A @ A ),X3: A,Q: set @ A] :
      ( ( wf @ A @ R2 )
     => ( ( member @ A @ X3 @ Q )
       => ~ ! [Z3: A] :
              ( ( member @ A @ Z3 @ Q )
             => ~ ! [Y6: A] :
                    ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y6 @ Z3 ) @ R2 )
                   => ~ ( member @ A @ Y6 @ Q ) ) ) ) ) ).

% wfE_min
thf(fact_61_wfI__min,axiom,
    ! [A: $tType,R2: set @ ( product_prod @ A @ A )] :
      ( ! [X: A,Q2: set @ A] :
          ( ( member @ A @ X @ Q2 )
         => ? [Xa: A] :
              ( ( member @ A @ Xa @ Q2 )
              & ! [Y3: A] :
                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y3 @ Xa ) @ R2 )
                 => ~ ( member @ A @ Y3 @ Q2 ) ) ) )
     => ( wf @ A @ R2 ) ) ).

% wfI_min
thf(fact_62_wfUNIVI,axiom,
    ! [A: $tType,R: set @ ( product_prod @ A @ A )] :
      ( ! [P5: A > $o,X: A] :
          ( ! [Xa: A] :
              ( ! [Y3: A] :
                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y3 @ Xa ) @ R )
                 => ( P5 @ Y3 ) )
             => ( P5 @ Xa ) )
         => ( P5 @ X ) )
     => ( wf @ A @ R ) ) ).

% wfUNIVI
thf(fact_63_wf__asym,axiom,
    ! [A: $tType,R: set @ ( product_prod @ A @ A ),A2: A,X3: A] :
      ( ( wf @ A @ R )
     => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ X3 ) @ R )
       => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ A2 ) @ R ) ) ) ).

% wf_asym
thf(fact_64_wf__induct,axiom,
    ! [A: $tType,R: set @ ( product_prod @ A @ A ),P2: A > $o,A2: A] :
      ( ( wf @ A @ R )
     => ( ! [X: A] :
            ( ! [Y6: A] :
                ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y6 @ X ) @ R )
               => ( P2 @ Y6 ) )
           => ( P2 @ X ) )
       => ( P2 @ A2 ) ) ) ).

% wf_induct
thf(fact_65_wf__irrefl,axiom,
    ! [A: $tType,R: set @ ( product_prod @ A @ A ),A2: A] :
      ( ( wf @ A @ R )
     => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ A2 ) @ R ) ) ).

% wf_irrefl
thf(fact_66_rev__image__eqI,axiom,
    ! [B: $tType,A: $tType,X3: A,A6: set @ A,B2: B,F: A > B] :
      ( ( member @ A @ X3 @ A6 )
     => ( ( B2
          = ( F @ X3 ) )
       => ( member @ B @ B2 @ ( image @ A @ B @ F @ A6 ) ) ) ) ).

% rev_image_eqI
thf(fact_67_ball__imageD,axiom,
    ! [A: $tType,B: $tType,F: B > A,A6: set @ B,P2: A > $o] :
      ( ! [X: A] :
          ( ( member @ A @ X @ ( image @ B @ A @ F @ A6 ) )
         => ( P2 @ X ) )
     => ! [X6: B] :
          ( ( member @ B @ X6 @ A6 )
         => ( P2 @ ( F @ X6 ) ) ) ) ).

% ball_imageD
thf(fact_68_image__cong,axiom,
    ! [B: $tType,A: $tType,M: set @ A,N: set @ A,F: A > B,G3: A > B] :
      ( ( M = N )
     => ( ! [X: A] :
            ( ( member @ A @ X @ N )
           => ( ( F @ X )
              = ( G3 @ X ) ) )
       => ( ( image @ A @ B @ F @ M )
          = ( image @ A @ B @ G3 @ N ) ) ) ) ).

% image_cong
thf(fact_69_bex__imageD,axiom,
    ! [A: $tType,B: $tType,F: B > A,A6: set @ B,P2: A > $o] :
      ( ? [X6: A] :
          ( ( member @ A @ X6 @ ( image @ B @ A @ F @ A6 ) )
          & ( P2 @ X6 ) )
     => ? [X: B] :
          ( ( member @ B @ X @ A6 )
          & ( P2 @ ( F @ X ) ) ) ) ).

% bex_imageD
thf(fact_70_image__iff,axiom,
    ! [A: $tType,B: $tType,Z2: A,F: B > A,A6: set @ B] :
      ( ( member @ A @ Z2 @ ( image @ B @ A @ F @ A6 ) )
      = ( ? [X4: B] :
            ( ( member @ B @ X4 @ A6 )
            & ( Z2
              = ( F @ X4 ) ) ) ) ) ).

% image_iff
thf(fact_71_imageI,axiom,
    ! [B: $tType,A: $tType,X3: A,A6: set @ A,F: A > B] :
      ( ( member @ A @ X3 @ A6 )
     => ( member @ B @ ( F @ X3 ) @ ( image @ A @ B @ F @ A6 ) ) ) ).

% imageI
thf(fact_72_wf__induct__rule,axiom,
    ! [A: $tType,R: set @ ( product_prod @ A @ A ),P2: A > $o,A2: A] :
      ( ( wf @ A @ R )
     => ( ! [X: A] :
            ( ! [Y6: A] :
                ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y6 @ X ) @ R )
               => ( P2 @ Y6 ) )
           => ( P2 @ X ) )
       => ( P2 @ A2 ) ) ) ).

% wf_induct_rule
thf(fact_73_wf__eq__minimal,axiom,
    ! [A: $tType] :
      ( ( wf @ A )
      = ( ^ [R3: set @ ( product_prod @ A @ A )] :
          ! [Q3: set @ A] :
            ( ? [X4: A] : ( member @ A @ X4 @ Q3 )
           => ? [X4: A] :
                ( ( member @ A @ X4 @ Q3 )
                & ! [Y5: A] :
                    ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y5 @ X4 ) @ R3 )
                   => ~ ( member @ A @ Y5 @ Q3 ) ) ) ) ) ) ).

% wf_eq_minimal
thf(fact_74_wf__not__refl,axiom,
    ! [A: $tType,R: set @ ( product_prod @ A @ A ),A2: A] :
      ( ( wf @ A @ R )
     => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ A2 ) @ R ) ) ).

% wf_not_refl
thf(fact_75_wf__not__sym,axiom,
    ! [A: $tType,R: set @ ( product_prod @ A @ A ),A2: A,X3: A] :
      ( ( wf @ A @ R )
     => ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ X3 ) @ R )
       => ~ ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ X3 @ A2 ) @ R ) ) ) ).

% wf_not_sym
thf(fact_76_wf__measure,axiom,
    ! [A: $tType,F: A > nat] : ( wf @ A @ ( measure @ A @ F ) ) ).

% wf_measure
thf(fact_77_dependent__wf__choice,axiom,
    ! [B: $tType,A: $tType,R2: set @ ( product_prod @ A @ A ),P2: ( A > B ) > A > B > $o] :
      ( ( wf @ A @ R2 )
     => ( ! [F3: A > B,G2: A > B,X: A,R4: B] :
            ( ! [Z4: A] :
                ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Z4 @ X ) @ R2 )
               => ( ( F3 @ Z4 )
                  = ( G2 @ Z4 ) ) )
           => ( ( P2 @ F3 @ X @ R4 )
              = ( P2 @ G2 @ X @ R4 ) ) )
       => ( ! [X: A,F3: A > B] :
              ( ! [Y6: A] :
                  ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ Y6 @ X ) @ R2 )
                 => ( P2 @ F3 @ Y6 @ ( F3 @ Y6 ) ) )
             => ? [X13: B] : ( P2 @ F3 @ X @ X13 ) )
         => ? [F3: A > B] :
            ! [X6: A] : ( P2 @ F3 @ X6 @ ( F3 @ X6 ) ) ) ) ) ).

% dependent_wf_choice
thf(fact_78_split__cong,axiom,
    ! [C: $tType,B: $tType,A: $tType,Q4: product_prod @ A @ B,F: A > B > C,G3: A > B > C,P: product_prod @ A @ B] :
      ( ! [X: A,Y3: B] :
          ( ( ( product_Pair @ A @ B @ X @ Y3 )
            = Q4 )
         => ( ( F @ X @ Y3 )
            = ( G3 @ X @ Y3 ) ) )
     => ( ( P = Q4 )
       => ( ( product_case_prod @ A @ B @ C @ F @ P )
          = ( product_case_prod @ A @ B @ C @ G3 @ Q4 ) ) ) ) ).

% split_cong
thf(fact_79_wf__lex__prod,axiom,
    ! [A: $tType,B: $tType,Ra: set @ ( product_prod @ A @ A ),Rb: set @ ( product_prod @ B @ B )] :
      ( ( wf @ A @ Ra )
     => ( ( wf @ B @ Rb )
       => ( wf @ ( product_prod @ A @ B ) @ ( lex_prod @ A @ B @ Ra @ Rb ) ) ) ) ).

% wf_lex_prod
thf(fact_80_in__lex__prod,axiom,
    ! [A: $tType,B: $tType,A2: A,B2: B,A3: A,B3: B,R: set @ ( product_prod @ A @ A ),S: set @ ( product_prod @ B @ B )] :
      ( ( member @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) @ ( product_Pair @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ ( product_Pair @ A @ B @ A3 @ B3 ) ) @ ( lex_prod @ A @ B @ R @ S ) )
      = ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ A2 @ A3 ) @ R )
        | ( ( A2 = A3 )
          & ( member @ ( product_prod @ B @ B ) @ ( product_Pair @ B @ B @ B2 @ B3 ) @ S ) ) ) ) ).

% in_lex_prod
thf(fact_81_surj__swap,axiom,
    ! [B: $tType,A: $tType] :
      ( ( image @ ( product_prod @ B @ A ) @ ( product_prod @ A @ B ) @ ( product_swap @ B @ A ) @ ( top_top @ ( set @ ( product_prod @ B @ A ) ) ) )
      = ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) ) ).

% surj_swap
thf(fact_82_Sup_OSUP__cong,axiom,
    ! [A: $tType,B: $tType,A6: set @ B,B6: set @ B,C4: B > A,D3: B > A,Sup: ( set @ A ) > A] :
      ( ( A6 = B6 )
     => ( ! [X: B] :
            ( ( member @ B @ X @ B6 )
           => ( ( C4 @ X )
              = ( D3 @ X ) ) )
       => ( ( Sup @ ( image @ B @ A @ C4 @ A6 ) )
          = ( Sup @ ( image @ B @ A @ D3 @ B6 ) ) ) ) ) ).

% Sup.SUP_cong
thf(fact_83_UNIV__I,axiom,
    ! [A: $tType,X3: A] : ( member @ A @ X3 @ ( top_top @ ( set @ A ) ) ) ).

% UNIV_I
thf(fact_84_UNIV__witness,axiom,
    ! [A: $tType] :
    ? [X: A] : ( member @ A @ X @ ( top_top @ ( set @ A ) ) ) ).

% UNIV_witness
thf(fact_85_UNIV__eq__I,axiom,
    ! [A: $tType,A6: set @ A] :
      ( ! [X: A] : ( member @ A @ X @ A6 )
     => ( ( top_top @ ( set @ A ) )
        = A6 ) ) ).

% UNIV_eq_I
thf(fact_86_range__eqI,axiom,
    ! [A: $tType,B: $tType,B2: A,F: B > A,X3: B] :
      ( ( B2
        = ( F @ X3 ) )
     => ( member @ A @ B2 @ ( image @ B @ A @ F @ ( top_top @ ( set @ B ) ) ) ) ) ).

% range_eqI
thf(fact_87_rangeI,axiom,
    ! [A: $tType,B: $tType,F: B > A,X3: B] : ( member @ A @ ( F @ X3 ) @ ( image @ B @ A @ F @ ( top_top @ ( set @ B ) ) ) ) ).

% rangeI
thf(fact_88_sp_092_060_094sub_062_092_060mu_062_Oinduct,axiom,
    ! [C: $tType,B: $tType,A: $tType,P2: ( stream901396144_sp_mu @ A @ B @ C ) > $o,Sp_mu: stream901396144_sp_mu @ A @ B @ C] :
      ( ! [X: A > ( stream901396144_sp_mu @ A @ B @ C )] :
          ( ! [Xa: stream901396144_sp_mu @ A @ B @ C] :
              ( ( member @ ( stream901396144_sp_mu @ A @ B @ C ) @ Xa @ ( image @ A @ ( stream901396144_sp_mu @ A @ B @ C ) @ X @ ( top_top @ ( set @ A ) ) ) )
             => ( P2 @ Xa ) )
         => ( P2 @ ( stream1294929701mu_Get @ A @ B @ C @ X ) ) )
     => ( ! [X1a: B,X23: C] : ( P2 @ ( stream1370332830mu_Put @ B @ C @ A @ X1a @ X23 ) )
       => ( P2 @ Sp_mu ) ) ) ).

% sp\<^sub>\<mu>.induct
thf(fact_89_Inf_OINF__cong,axiom,
    ! [A: $tType,B: $tType,A6: set @ B,B6: set @ B,C4: B > A,D3: B > A,Inf: ( set @ A ) > A] :
      ( ( A6 = B6 )
     => ( ! [X: B] :
            ( ( member @ B @ X @ B6 )
           => ( ( C4 @ X )
              = ( D3 @ X ) ) )
       => ( ( Inf @ ( image @ B @ A @ C4 @ A6 ) )
          = ( Inf @ ( image @ B @ A @ D3 @ B6 ) ) ) ) ) ).

% Inf.INF_cong
thf(fact_90_iso__tuple__UNIV__I,axiom,
    ! [A: $tType,X3: A] : ( member @ A @ X3 @ ( top_top @ ( set @ A ) ) ) ).

% iso_tuple_UNIV_I
thf(fact_91_top__apply,axiom,
    ! [C: $tType,D: $tType] :
      ( ( top @ C @ ( type2 @ C ) )
     => ( ( top_top @ ( D > C ) )
        = ( ^ [X4: D] : ( top_top @ C ) ) ) ) ).

% top_apply
thf(fact_92_surjD,axiom,
    ! [A: $tType,B: $tType,F: B > A,Y: A] :
      ( ( ( image @ B @ A @ F @ ( top_top @ ( set @ B ) ) )
        = ( top_top @ ( set @ A ) ) )
     => ? [X: B] :
          ( Y
          = ( F @ X ) ) ) ).

% surjD
thf(fact_93_surjE,axiom,
    ! [A: $tType,B: $tType,F: B > A,Y: A] :
      ( ( ( image @ B @ A @ F @ ( top_top @ ( set @ B ) ) )
        = ( top_top @ ( set @ A ) ) )
     => ~ ! [X: B] :
            ( Y
           != ( F @ X ) ) ) ).

% surjE
thf(fact_94_surjI,axiom,
    ! [B: $tType,A: $tType,G3: B > A,F: A > B] :
      ( ! [X: A] :
          ( ( G3 @ ( F @ X ) )
          = X )
     => ( ( image @ B @ A @ G3 @ ( top_top @ ( set @ B ) ) )
        = ( top_top @ ( set @ A ) ) ) ) ).

% surjI
thf(fact_95_surj__def,axiom,
    ! [B: $tType,A: $tType,F: B > A] :
      ( ( ( image @ B @ A @ F @ ( top_top @ ( set @ B ) ) )
        = ( top_top @ ( set @ A ) ) )
      = ( ! [Y5: A] :
          ? [X4: B] :
            ( Y5
            = ( F @ X4 ) ) ) ) ).

% surj_def
thf(fact_96_top__set__def,axiom,
    ! [A: $tType] :
      ( ( top_top @ ( set @ A ) )
      = ( collect @ A @ ( top_top @ ( A > $o ) ) ) ) ).

% top_set_def
thf(fact_97_sp_092_060_094sub_062_092_060mu_062_Oset__cases_I2_J,axiom,
    ! [B: $tType,A: $tType,C: $tType,E3: C,A2: stream901396144_sp_mu @ A @ B @ C] :
      ( ( member @ C @ E3 @ ( stream1259315544_sp_mu @ A @ B @ C @ A2 ) )
     => ( ! [Z3: A > ( stream901396144_sp_mu @ A @ B @ C )] :
            ( ( A2
              = ( stream1294929701mu_Get @ A @ B @ C @ Z3 ) )
           => ! [X: stream901396144_sp_mu @ A @ B @ C] :
                ( ( member @ ( stream901396144_sp_mu @ A @ B @ C ) @ X @ ( image @ A @ ( stream901396144_sp_mu @ A @ B @ C ) @ Z3 @ ( top_top @ ( set @ A ) ) ) )
               => ~ ( member @ C @ E3 @ ( stream1259315544_sp_mu @ A @ B @ C @ X ) ) ) )
       => ~ ! [Z1: B] :
              ( A2
             != ( stream1370332830mu_Put @ B @ C @ A @ Z1 @ E3 ) ) ) ) ).

% sp\<^sub>\<mu>.set_cases(2)
thf(fact_98_sp_092_060_094sub_062_092_060mu_062_Oset__cases_I1_J,axiom,
    ! [B: $tType,A: $tType,C: $tType,E3: B,A2: stream901396144_sp_mu @ A @ B @ C] :
      ( ( member @ B @ E3 @ ( stream2074884121_sp_mu @ A @ B @ C @ A2 ) )
     => ( ! [Z3: A > ( stream901396144_sp_mu @ A @ B @ C )] :
            ( ( A2
              = ( stream1294929701mu_Get @ A @ B @ C @ Z3 ) )
           => ! [X: stream901396144_sp_mu @ A @ B @ C] :
                ( ( member @ ( stream901396144_sp_mu @ A @ B @ C ) @ X @ ( image @ A @ ( stream901396144_sp_mu @ A @ B @ C ) @ Z3 @ ( top_top @ ( set @ A ) ) ) )
               => ~ ( member @ B @ E3 @ ( stream2074884121_sp_mu @ A @ B @ C @ X ) ) ) )
       => ~ ! [Z22: C] :
              ( A2
             != ( stream1370332830mu_Put @ B @ C @ A @ E3 @ Z22 ) ) ) ) ).

% sp\<^sub>\<mu>.set_cases(1)
thf(fact_99_sp_092_060_094sub_062_092_060mu_062_Oset__intros_I3_J,axiom,
    ! [C: $tType,B: $tType,A: $tType,Xc: stream901396144_sp_mu @ A @ B @ C,Aa: A > ( stream901396144_sp_mu @ A @ B @ C ),Xe: C] :
      ( ( member @ ( stream901396144_sp_mu @ A @ B @ C ) @ Xc @ ( image @ A @ ( stream901396144_sp_mu @ A @ B @ C ) @ Aa @ ( top_top @ ( set @ A ) ) ) )
     => ( ( member @ C @ Xe @ ( stream1259315544_sp_mu @ A @ B @ C @ Xc ) )
       => ( member @ C @ Xe @ ( stream1259315544_sp_mu @ A @ B @ C @ ( stream1294929701mu_Get @ A @ B @ C @ Aa ) ) ) ) ) ).

% sp\<^sub>\<mu>.set_intros(3)
thf(fact_100_sp_092_060_094sub_062_092_060mu_062_Oset__intros_I1_J,axiom,
    ! [C: $tType,B: $tType,A: $tType,X3: stream901396144_sp_mu @ A @ B @ C,A2: A > ( stream901396144_sp_mu @ A @ B @ C ),Xa2: B] :
      ( ( member @ ( stream901396144_sp_mu @ A @ B @ C ) @ X3 @ ( image @ A @ ( stream901396144_sp_mu @ A @ B @ C ) @ A2 @ ( top_top @ ( set @ A ) ) ) )
     => ( ( member @ B @ Xa2 @ ( stream2074884121_sp_mu @ A @ B @ C @ X3 ) )
       => ( member @ B @ Xa2 @ ( stream2074884121_sp_mu @ A @ B @ C @ ( stream1294929701mu_Get @ A @ B @ C @ A2 ) ) ) ) ) ).

% sp\<^sub>\<mu>.set_intros(1)
thf(fact_101_map__prod__surj,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,F: A > B,G3: C > D] :
      ( ( ( image @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
        = ( top_top @ ( set @ B ) ) )
     => ( ( ( image @ C @ D @ G3 @ ( top_top @ ( set @ C ) ) )
          = ( top_top @ ( set @ D ) ) )
       => ( ( image @ ( product_prod @ A @ C ) @ ( product_prod @ B @ D ) @ ( product_map_prod @ A @ B @ C @ D @ F @ G3 ) @ ( top_top @ ( set @ ( product_prod @ A @ C ) ) ) )
          = ( top_top @ ( set @ ( product_prod @ B @ D ) ) ) ) ) ) ).

% map_prod_surj
thf(fact_102_top1I,axiom,
    ! [A: $tType,X3: A] : ( top_top @ ( A > $o ) @ X3 ) ).

% top1I
thf(fact_103_map__prod__simp,axiom,
    ! [C: $tType,A: $tType,B: $tType,D: $tType,F: C > A,G3: D > B,A2: C,B2: D] :
      ( ( product_map_prod @ C @ A @ D @ B @ F @ G3 @ ( product_Pair @ C @ D @ A2 @ B2 ) )
      = ( product_Pair @ A @ B @ ( F @ A2 ) @ ( G3 @ B2 ) ) ) ).

% map_prod_simp
thf(fact_104_map__prod__imageI,axiom,
    ! [D: $tType,C: $tType,B: $tType,A: $tType,A2: A,B2: B,R2: set @ ( product_prod @ A @ B ),F: A > C,G3: B > D] :
      ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ A2 @ B2 ) @ R2 )
     => ( member @ ( product_prod @ C @ D ) @ ( product_Pair @ C @ D @ ( F @ A2 ) @ ( G3 @ B2 ) ) @ ( image @ ( product_prod @ A @ B ) @ ( product_prod @ C @ D ) @ ( product_map_prod @ A @ C @ B @ D @ F @ G3 ) @ R2 ) ) ) ).

% map_prod_imageI
thf(fact_105_sp_092_060_094sub_062_092_060mu_062_Orel__refl__strong,axiom,
    ! [C: $tType,A: $tType,B: $tType,X3: stream901396144_sp_mu @ B @ A @ C,R1a: A > A > $o,R2a: C > C > $o] :
      ( ! [Z1: A] :
          ( ( member @ A @ Z1 @ ( stream2074884121_sp_mu @ B @ A @ C @ X3 ) )
         => ( R1a @ Z1 @ Z1 ) )
     => ( ! [Z22: C] :
            ( ( member @ C @ Z22 @ ( stream1259315544_sp_mu @ B @ A @ C @ X3 ) )
           => ( R2a @ Z22 @ Z22 ) )
       => ( stream1924447089_sp_mu @ A @ A @ C @ C @ B @ R1a @ R2a @ X3 @ X3 ) ) ) ).

% sp\<^sub>\<mu>.rel_refl_strong
thf(fact_106_sp_092_060_094sub_062_092_060mu_062_Orel__mono__strong,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,G: $tType,R1: A > C > $o,R22: B > D > $o,X3: stream901396144_sp_mu @ G @ A @ B,Y: stream901396144_sp_mu @ G @ C @ D,R1a: A > C > $o,R2a: B > D > $o] :
      ( ( stream1924447089_sp_mu @ A @ C @ B @ D @ G @ R1 @ R22 @ X3 @ Y )
     => ( ! [Z1: A,Y12: C] :
            ( ( member @ A @ Z1 @ ( stream2074884121_sp_mu @ G @ A @ B @ X3 ) )
           => ( ( member @ C @ Y12 @ ( stream2074884121_sp_mu @ G @ C @ D @ Y ) )
             => ( ( R1 @ Z1 @ Y12 )
               => ( R1a @ Z1 @ Y12 ) ) ) )
       => ( ! [Z22: B,Y23: D] :
              ( ( member @ B @ Z22 @ ( stream1259315544_sp_mu @ G @ A @ B @ X3 ) )
             => ( ( member @ D @ Y23 @ ( stream1259315544_sp_mu @ G @ C @ D @ Y ) )
               => ( ( R22 @ Z22 @ Y23 )
                 => ( R2a @ Z22 @ Y23 ) ) ) )
         => ( stream1924447089_sp_mu @ A @ C @ B @ D @ G @ R1a @ R2a @ X3 @ Y ) ) ) ) ).

% sp\<^sub>\<mu>.rel_mono_strong
thf(fact_107_sp_092_060_094sub_062_092_060mu_062_Orel__cong,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,G: $tType,X3: stream901396144_sp_mu @ G @ A @ B,Ya: stream901396144_sp_mu @ G @ A @ B,Y: stream901396144_sp_mu @ G @ C @ D,Xa2: stream901396144_sp_mu @ G @ C @ D,R1: A > C > $o,R1a: A > C > $o,R22: B > D > $o,R2a: B > D > $o] :
      ( ( X3 = Ya )
     => ( ( Y = Xa2 )
       => ( ! [Z1: A,Y12: C] :
              ( ( member @ A @ Z1 @ ( stream2074884121_sp_mu @ G @ A @ B @ Ya ) )
             => ( ( member @ C @ Y12 @ ( stream2074884121_sp_mu @ G @ C @ D @ Xa2 ) )
               => ( ( R1 @ Z1 @ Y12 )
                  = ( R1a @ Z1 @ Y12 ) ) ) )
         => ( ! [Z22: B,Y23: D] :
                ( ( member @ B @ Z22 @ ( stream1259315544_sp_mu @ G @ A @ B @ Ya ) )
               => ( ( member @ D @ Y23 @ ( stream1259315544_sp_mu @ G @ C @ D @ Xa2 ) )
                 => ( ( R22 @ Z22 @ Y23 )
                    = ( R2a @ Z22 @ Y23 ) ) ) )
           => ( ( stream1924447089_sp_mu @ A @ C @ B @ D @ G @ R1 @ R22 @ X3 @ Y )
              = ( stream1924447089_sp_mu @ A @ C @ B @ D @ G @ R1a @ R2a @ Ya @ Xa2 ) ) ) ) ) ) ).

% sp\<^sub>\<mu>.rel_cong
thf(fact_108_sp_092_060_094sub_062_092_060mu_062_Opred__mono__strong,axiom,
    ! [B: $tType,A: $tType,G: $tType,P1: A > $o,P22: B > $o,X3: stream901396144_sp_mu @ G @ A @ B,P1a: A > $o,P2a: B > $o] :
      ( ( stream123009735_sp_mu @ A @ B @ G @ P1 @ P22 @ X3 )
     => ( ! [Z1: A] :
            ( ( member @ A @ Z1 @ ( stream2074884121_sp_mu @ G @ A @ B @ X3 ) )
           => ( ( P1 @ Z1 )
             => ( P1a @ Z1 ) ) )
       => ( ! [Z22: B] :
              ( ( member @ B @ Z22 @ ( stream1259315544_sp_mu @ G @ A @ B @ X3 ) )
             => ( ( P22 @ Z22 )
               => ( P2a @ Z22 ) ) )
         => ( stream123009735_sp_mu @ A @ B @ G @ P1a @ P2a @ X3 ) ) ) ) ).

% sp\<^sub>\<mu>.pred_mono_strong
thf(fact_109_sp_092_060_094sub_062_092_060mu_062_Opred__cong,axiom,
    ! [B: $tType,A: $tType,G: $tType,X3: stream901396144_sp_mu @ G @ A @ B,Ya: stream901396144_sp_mu @ G @ A @ B,P1: A > $o,P1a: A > $o,P22: B > $o,P2a: B > $o] :
      ( ( X3 = Ya )
     => ( ! [Z1: A] :
            ( ( member @ A @ Z1 @ ( stream2074884121_sp_mu @ G @ A @ B @ Ya ) )
           => ( ( P1 @ Z1 )
              = ( P1a @ Z1 ) ) )
       => ( ! [Z22: B] :
              ( ( member @ B @ Z22 @ ( stream1259315544_sp_mu @ G @ A @ B @ Ya ) )
             => ( ( P22 @ Z22 )
                = ( P2a @ Z22 ) ) )
         => ( ( stream123009735_sp_mu @ A @ B @ G @ P1 @ P22 @ X3 )
            = ( stream123009735_sp_mu @ A @ B @ G @ P1a @ P2a @ Ya ) ) ) ) ) ).

% sp\<^sub>\<mu>.pred_cong
thf(fact_110_sp_092_060_094sub_062_092_060mu_062_Oset__intros_I2_J,axiom,
    ! [B: $tType,A: $tType,C: $tType,A1: B,A22: C] : ( member @ B @ A1 @ ( stream2074884121_sp_mu @ A @ B @ C @ ( stream1370332830mu_Put @ B @ C @ A @ A1 @ A22 ) ) ) ).

% sp\<^sub>\<mu>.set_intros(2)
thf(fact_111_sp_092_060_094sub_062_092_060mu_062_Oset__intros_I4_J,axiom,
    ! [B: $tType,A: $tType,C: $tType,A2a: C,A1a: B] : ( member @ C @ A2a @ ( stream1259315544_sp_mu @ A @ B @ C @ ( stream1370332830mu_Put @ B @ C @ A @ A1a @ A2a ) ) ) ).

% sp\<^sub>\<mu>.set_intros(4)
thf(fact_112_prod__fun__imageE,axiom,
    ! [B: $tType,A: $tType,D: $tType,C: $tType,C3: product_prod @ A @ B,F: C > A,G3: D > B,R2: set @ ( product_prod @ C @ D )] :
      ( ( member @ ( product_prod @ A @ B ) @ C3 @ ( image @ ( product_prod @ C @ D ) @ ( product_prod @ A @ B ) @ ( product_map_prod @ C @ A @ D @ B @ F @ G3 ) @ R2 ) )
     => ~ ! [X: C,Y3: D] :
            ( ( C3
              = ( product_Pair @ A @ B @ ( F @ X ) @ ( G3 @ Y3 ) ) )
           => ~ ( member @ ( product_prod @ C @ D ) @ ( product_Pair @ C @ D @ X @ Y3 ) @ R2 ) ) ) ).

% prod_fun_imageE
thf(fact_113_top__empty__eq,axiom,
    ! [A: $tType] :
      ( ( top_top @ ( A > $o ) )
      = ( ^ [X4: A] : ( member @ A @ X4 @ ( top_top @ ( set @ A ) ) ) ) ) ).

% top_empty_eq
thf(fact_114_top__conj_I2_J,axiom,
    ! [A: $tType,P2: $o,X3: A] :
      ( ( P2
        & ( top_top @ ( A > $o ) @ X3 ) )
      = P2 ) ).

% top_conj(2)
thf(fact_115_top__conj_I1_J,axiom,
    ! [A: $tType,X3: A,P2: $o] :
      ( ( ( top_top @ ( A > $o ) @ X3 )
        & P2 )
      = P2 ) ).

% top_conj(1)
thf(fact_116_sp_092_060_094sub_062_092_060mu_062_Osimps_I15_J,axiom,
    ! [B: $tType,C: $tType,A: $tType,X1: A > ( stream901396144_sp_mu @ A @ B @ C )] :
      ( ( stream2074884121_sp_mu @ A @ B @ C @ ( stream1294929701mu_Get @ A @ B @ C @ X1 ) )
      = ( complete_Sup_Sup @ ( set @ B ) @ ( image @ ( stream901396144_sp_mu @ A @ B @ C ) @ ( set @ B ) @ ( stream2074884121_sp_mu @ A @ B @ C ) @ ( image @ A @ ( stream901396144_sp_mu @ A @ B @ C ) @ X1 @ ( top_top @ ( set @ A ) ) ) ) ) ) ).

% sp\<^sub>\<mu>.simps(15)
thf(fact_117_sp_092_060_094sub_062_092_060mu_062_Osimps_I17_J,axiom,
    ! [B: $tType,C: $tType,A: $tType,X1: A > ( stream901396144_sp_mu @ A @ B @ C )] :
      ( ( stream1259315544_sp_mu @ A @ B @ C @ ( stream1294929701mu_Get @ A @ B @ C @ X1 ) )
      = ( complete_Sup_Sup @ ( set @ C ) @ ( image @ ( stream901396144_sp_mu @ A @ B @ C ) @ ( set @ C ) @ ( stream1259315544_sp_mu @ A @ B @ C ) @ ( image @ A @ ( stream901396144_sp_mu @ A @ B @ C ) @ X1 @ ( top_top @ ( set @ A ) ) ) ) ) ) ).

% sp\<^sub>\<mu>.simps(17)
thf(fact_118_UN__ball__bex__simps_I3_J,axiom,
    ! [D: $tType,A6: set @ ( set @ D ),P2: D > $o] :
      ( ( ? [X4: D] :
            ( ( member @ D @ X4 @ ( complete_Sup_Sup @ ( set @ D ) @ A6 ) )
            & ( P2 @ X4 ) ) )
      = ( ? [X4: set @ D] :
            ( ( member @ ( set @ D ) @ X4 @ A6 )
            & ? [Y5: D] :
                ( ( member @ D @ Y5 @ X4 )
                & ( P2 @ Y5 ) ) ) ) ) ).

% UN_ball_bex_simps(3)
thf(fact_119_UN__ball__bex__simps_I1_J,axiom,
    ! [A: $tType,A6: set @ ( set @ A ),P2: A > $o] :
      ( ( ! [X4: A] :
            ( ( member @ A @ X4 @ ( complete_Sup_Sup @ ( set @ A ) @ A6 ) )
           => ( P2 @ X4 ) ) )
      = ( ! [X4: set @ A] :
            ( ( member @ ( set @ A ) @ X4 @ A6 )
           => ! [Y5: A] :
                ( ( member @ A @ Y5 @ X4 )
               => ( P2 @ Y5 ) ) ) ) ) ).

% UN_ball_bex_simps(1)
thf(fact_120_UnionI,axiom,
    ! [A: $tType,X7: set @ A,C4: set @ ( set @ A ),A6: A] :
      ( ( member @ ( set @ A ) @ X7 @ C4 )
     => ( ( member @ A @ A6 @ X7 )
       => ( member @ A @ A6 @ ( complete_Sup_Sup @ ( set @ A ) @ C4 ) ) ) ) ).

% UnionI
thf(fact_121_Union__iff,axiom,
    ! [A: $tType,A6: A,C4: set @ ( set @ A )] :
      ( ( member @ A @ A6 @ ( complete_Sup_Sup @ ( set @ A ) @ C4 ) )
      = ( ? [X4: set @ A] :
            ( ( member @ ( set @ A ) @ X4 @ C4 )
            & ( member @ A @ A6 @ X4 ) ) ) ) ).

% Union_iff
thf(fact_122_ball__UN,axiom,
    ! [A: $tType,B: $tType,B6: B > ( set @ A ),A6: set @ B,P2: A > $o] :
      ( ( ! [X4: A] :
            ( ( member @ A @ X4 @ ( complete_Sup_Sup @ ( set @ A ) @ ( image @ B @ ( set @ A ) @ B6 @ A6 ) ) )
           => ( P2 @ X4 ) ) )
      = ( ! [X4: B] :
            ( ( member @ B @ X4 @ A6 )
           => ! [Y5: A] :
                ( ( member @ A @ Y5 @ ( B6 @ X4 ) )
               => ( P2 @ Y5 ) ) ) ) ) ).

% ball_UN
thf(fact_123_bex__UN,axiom,
    ! [A: $tType,B: $tType,B6: B > ( set @ A ),A6: set @ B,P2: A > $o] :
      ( ( ? [X4: A] :
            ( ( member @ A @ X4 @ ( complete_Sup_Sup @ ( set @ A ) @ ( image @ B @ ( set @ A ) @ B6 @ A6 ) ) )
            & ( P2 @ X4 ) ) )
      = ( ? [X4: B] :
            ( ( member @ B @ X4 @ A6 )
            & ? [Y5: A] :
                ( ( member @ A @ Y5 @ ( B6 @ X4 ) )
                & ( P2 @ Y5 ) ) ) ) ) ).

% bex_UN
thf(fact_124_UN__ball__bex__simps_I2_J,axiom,
    ! [C: $tType,B: $tType,B6: B > ( set @ C ),A6: set @ B,P2: C > $o] :
      ( ( ! [X4: C] :
            ( ( member @ C @ X4 @ ( complete_Sup_Sup @ ( set @ C ) @ ( image @ B @ ( set @ C ) @ B6 @ A6 ) ) )
           => ( P2 @ X4 ) ) )
      = ( ! [X4: B] :
            ( ( member @ B @ X4 @ A6 )
           => ! [Y5: C] :
                ( ( member @ C @ Y5 @ ( B6 @ X4 ) )
               => ( P2 @ Y5 ) ) ) ) ) ).

% UN_ball_bex_simps(2)
thf(fact_125_UN__ball__bex__simps_I4_J,axiom,
    ! [F2: $tType,E: $tType,B6: E > ( set @ F2 ),A6: set @ E,P2: F2 > $o] :
      ( ( ? [X4: F2] :
            ( ( member @ F2 @ X4 @ ( complete_Sup_Sup @ ( set @ F2 ) @ ( image @ E @ ( set @ F2 ) @ B6 @ A6 ) ) )
            & ( P2 @ X4 ) ) )
      = ( ? [X4: E] :
            ( ( member @ E @ X4 @ A6 )
            & ? [Y5: F2] :
                ( ( member @ F2 @ Y5 @ ( B6 @ X4 ) )
                & ( P2 @ Y5 ) ) ) ) ) ).

% UN_ball_bex_simps(4)
thf(fact_126_Sup__UNIV,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ( ( complete_Sup_Sup @ A @ ( top_top @ ( set @ A ) ) )
        = ( top_top @ A ) ) ) ).

% Sup_UNIV
thf(fact_127_Union__UNIV,axiom,
    ! [A: $tType] :
      ( ( complete_Sup_Sup @ ( set @ A ) @ ( top_top @ ( set @ ( set @ A ) ) ) )
      = ( top_top @ ( set @ A ) ) ) ).

% Union_UNIV
thf(fact_128_UnionE,axiom,
    ! [A: $tType,A6: A,C4: set @ ( set @ A )] :
      ( ( member @ A @ A6 @ ( complete_Sup_Sup @ ( set @ A ) @ C4 ) )
     => ~ ! [X8: set @ A] :
            ( ( member @ A @ A6 @ X8 )
           => ~ ( member @ ( set @ A ) @ X8 @ C4 ) ) ) ).

% UnionE
thf(fact_129_SUP__cong,axiom,
    ! [A: $tType,B: $tType] :
      ( ( complete_Sup @ A @ ( type2 @ A ) )
     => ! [A6: set @ B,B6: set @ B,C4: B > A,D3: B > A] :
          ( ( A6 = B6 )
         => ( ! [X: B] :
                ( ( member @ B @ X @ B6 )
               => ( ( C4 @ X )
                  = ( D3 @ X ) ) )
           => ( ( complete_Sup_Sup @ A @ ( image @ B @ A @ C4 @ A6 ) )
              = ( complete_Sup_Sup @ A @ ( image @ B @ A @ D3 @ B6 ) ) ) ) ) ) ).

% SUP_cong
thf(fact_130_same__fstI,axiom,
    ! [B: $tType,A: $tType,P2: A > $o,X3: A,Y7: B,Y: B,R2: A > ( set @ ( product_prod @ B @ B ) )] :
      ( ( P2 @ X3 )
     => ( ( member @ ( product_prod @ B @ B ) @ ( product_Pair @ B @ B @ Y7 @ Y ) @ ( R2 @ X3 ) )
       => ( member @ ( product_prod @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) ) @ ( product_Pair @ ( product_prod @ A @ B ) @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X3 @ Y7 ) @ ( product_Pair @ A @ B @ X3 @ Y ) ) @ ( same_fst @ A @ B @ P2 @ R2 ) ) ) ) ).

% same_fstI
thf(fact_131_wf__same__fst,axiom,
    ! [B: $tType,A: $tType,P2: A > $o,R2: A > ( set @ ( product_prod @ B @ B ) )] :
      ( ! [X: A] :
          ( ( P2 @ X )
         => ( wf @ B @ ( R2 @ X ) ) )
     => ( wf @ ( product_prod @ A @ B ) @ ( same_fst @ A @ B @ P2 @ R2 ) ) ) ).

% wf_same_fst
thf(fact_132_wf__map__prod__image,axiom,
    ! [B: $tType,A: $tType,R: set @ ( product_prod @ A @ A ),F: A > B] :
      ( ( wf @ A @ R )
     => ( ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
       => ( wf @ B @ ( image @ ( product_prod @ A @ A ) @ ( product_prod @ B @ B ) @ ( product_map_prod @ A @ B @ A @ B @ F @ F ) @ R ) ) ) ) ).

% wf_map_prod_image
thf(fact_133_member__bind,axiom,
    ! [A: $tType,B: $tType,X3: A,P2: set @ B,F: B > ( set @ A )] :
      ( ( member @ A @ X3 @ ( bind @ B @ A @ P2 @ F ) )
      = ( member @ A @ X3 @ ( complete_Sup_Sup @ ( set @ A ) @ ( image @ B @ ( set @ A ) @ F @ P2 ) ) ) ) ).

% member_bind
thf(fact_134_inj__apfst,axiom,
    ! [B: $tType,C: $tType,A: $tType,F: A > C] :
      ( ( inj_on @ ( product_prod @ A @ B ) @ ( product_prod @ C @ B ) @ ( product_apfst @ A @ C @ B @ F ) @ ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) )
      = ( inj_on @ A @ C @ F @ ( top_top @ ( set @ A ) ) ) ) ).

% inj_apfst
thf(fact_135_inj__apsnd,axiom,
    ! [A: $tType,C: $tType,B: $tType,F: B > C] :
      ( ( inj_on @ ( product_prod @ A @ B ) @ ( product_prod @ A @ C ) @ ( product_apsnd @ B @ C @ A @ F ) @ ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) )
      = ( inj_on @ B @ C @ F @ ( top_top @ ( set @ B ) ) ) ) ).

% inj_apsnd
thf(fact_136_inj__on__image__iff,axiom,
    ! [B: $tType,A: $tType,A6: set @ A,G3: A > B,F: A > A] :
      ( ! [X: A] :
          ( ( member @ A @ X @ A6 )
         => ! [Xa3: A] :
              ( ( member @ A @ Xa3 @ A6 )
             => ( ( ( G3 @ ( F @ X ) )
                  = ( G3 @ ( F @ Xa3 ) ) )
                = ( ( G3 @ X )
                  = ( G3 @ Xa3 ) ) ) ) )
     => ( ( inj_on @ A @ A @ F @ A6 )
       => ( ( inj_on @ A @ B @ G3 @ ( image @ A @ A @ F @ A6 ) )
          = ( inj_on @ A @ B @ G3 @ A6 ) ) ) ) ).

% inj_on_image_iff
thf(fact_137_inj__on__image,axiom,
    ! [B: $tType,A: $tType,F: A > B,A6: set @ ( set @ A )] :
      ( ( inj_on @ A @ B @ F @ ( complete_Sup_Sup @ ( set @ A ) @ A6 ) )
     => ( inj_on @ ( set @ A ) @ ( set @ B ) @ ( image @ A @ B @ F ) @ A6 ) ) ).

% inj_on_image
thf(fact_138_inj__swap,axiom,
    ! [B: $tType,A: $tType,A6: set @ ( product_prod @ A @ B )] : ( inj_on @ ( product_prod @ A @ B ) @ ( product_prod @ B @ A ) @ ( product_swap @ A @ B ) @ A6 ) ).

% inj_swap
thf(fact_139_inj__eq,axiom,
    ! [B: $tType,A: $tType,F: A > B,X3: A,Y: A] :
      ( ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
     => ( ( ( F @ X3 )
          = ( F @ Y ) )
        = ( X3 = Y ) ) ) ).

% inj_eq
thf(fact_140_injI,axiom,
    ! [B: $tType,A: $tType,F: A > B] :
      ( ! [X: A,Y3: A] :
          ( ( ( F @ X )
            = ( F @ Y3 ) )
         => ( X = Y3 ) )
     => ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) ) ) ).

% injI
thf(fact_141_injD,axiom,
    ! [B: $tType,A: $tType,F: A > B,X3: A,Y: A] :
      ( ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
     => ( ( ( F @ X3 )
          = ( F @ Y ) )
       => ( X3 = Y ) ) ) ).

% injD
thf(fact_142_range__ex1__eq,axiom,
    ! [B: $tType,A: $tType,F: A > B,B2: B] :
      ( ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
     => ( ( member @ B @ B2 @ ( image @ A @ B @ F @ ( top_top @ ( set @ A ) ) ) )
        = ( ? [X4: A] :
              ( ( B2
                = ( F @ X4 ) )
              & ! [Y5: A] :
                  ( ( B2
                    = ( F @ Y5 ) )
                 => ( Y5 = X4 ) ) ) ) ) ) ).

% range_ex1_eq
thf(fact_143_inj__image__eq__iff,axiom,
    ! [B: $tType,A: $tType,F: A > B,A6: set @ A,B6: set @ A] :
      ( ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
     => ( ( ( image @ A @ B @ F @ A6 )
          = ( image @ A @ B @ F @ B6 ) )
        = ( A6 = B6 ) ) ) ).

% inj_image_eq_iff
thf(fact_144_inj__image__mem__iff,axiom,
    ! [B: $tType,A: $tType,F: A > B,A2: A,A6: set @ A] :
      ( ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
     => ( ( member @ B @ ( F @ A2 ) @ ( image @ A @ B @ F @ A6 ) )
        = ( member @ A @ A2 @ A6 ) ) ) ).

% inj_image_mem_iff
thf(fact_145_bind__UNION,axiom,
    ! [A: $tType,B: $tType] :
      ( ( bind @ B @ A )
      = ( ^ [A7: set @ B,F4: B > ( set @ A )] : ( complete_Sup_Sup @ ( set @ A ) @ ( image @ B @ ( set @ A ) @ F4 @ A7 ) ) ) ) ).

% bind_UNION
thf(fact_146_prod_Oinj__map,axiom,
    ! [D: $tType,C: $tType,B: $tType,A: $tType,F1: A > C,F22: B > D] :
      ( ( inj_on @ A @ C @ F1 @ ( top_top @ ( set @ A ) ) )
     => ( ( inj_on @ B @ D @ F22 @ ( top_top @ ( set @ B ) ) )
       => ( inj_on @ ( product_prod @ A @ B ) @ ( product_prod @ C @ D ) @ ( product_map_prod @ A @ C @ B @ D @ F1 @ F22 ) @ ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) ) ) ) ).

% prod.inj_map
thf(fact_147_the__inv__into__onto,axiom,
    ! [B: $tType,A: $tType,F: A > B,A6: set @ A] :
      ( ( inj_on @ A @ B @ F @ A6 )
     => ( ( image @ B @ A @ ( the_inv_into @ A @ B @ A6 @ F ) @ ( image @ A @ B @ F @ A6 ) )
        = A6 ) ) ).

% the_inv_into_onto
thf(fact_148_range__fst,axiom,
    ! [B: $tType,A: $tType] :
      ( ( image @ ( product_prod @ A @ B ) @ A @ ( product_fst @ A @ B ) @ ( top_top @ ( set @ ( product_prod @ A @ B ) ) ) )
      = ( top_top @ ( set @ A ) ) ) ).

% range_fst
thf(fact_149_range__snd,axiom,
    ! [B: $tType,A: $tType] :
      ( ( image @ ( product_prod @ B @ A ) @ A @ ( product_snd @ B @ A ) @ ( top_top @ ( set @ ( product_prod @ B @ A ) ) ) )
      = ( top_top @ ( set @ A ) ) ) ).

% range_snd
thf(fact_150_fst__map__prod,axiom,
    ! [B: $tType,A: $tType,D: $tType,C: $tType,F: C > A,G3: D > B,X3: product_prod @ C @ D] :
      ( ( product_fst @ A @ B @ ( product_map_prod @ C @ A @ D @ B @ F @ G3 @ X3 ) )
      = ( F @ ( product_fst @ C @ D @ X3 ) ) ) ).

% fst_map_prod
thf(fact_151_snd__map__prod,axiom,
    ! [B: $tType,A: $tType,D: $tType,C: $tType,F: C > B,G3: D > A,X3: product_prod @ C @ D] :
      ( ( product_snd @ B @ A @ ( product_map_prod @ C @ B @ D @ A @ F @ G3 @ X3 ) )
      = ( G3 @ ( product_snd @ C @ D @ X3 ) ) ) ).

% snd_map_prod
thf(fact_152_fst__apfst,axiom,
    ! [A: $tType,B: $tType,C: $tType,F: C > A,X3: product_prod @ C @ B] :
      ( ( product_fst @ A @ B @ ( product_apfst @ C @ A @ B @ F @ X3 ) )
      = ( F @ ( product_fst @ C @ B @ X3 ) ) ) ).

% fst_apfst
thf(fact_153_apfst__eq__conv,axiom,
    ! [A: $tType,B: $tType,C: $tType,F: C > A,X3: product_prod @ C @ B,G3: C > A] :
      ( ( ( product_apfst @ C @ A @ B @ F @ X3 )
        = ( product_apfst @ C @ A @ B @ G3 @ X3 ) )
      = ( ( F @ ( product_fst @ C @ B @ X3 ) )
        = ( G3 @ ( product_fst @ C @ B @ X3 ) ) ) ) ).

% apfst_eq_conv
thf(fact_154_snd__apfst,axiom,
    ! [B: $tType,A: $tType,C: $tType,F: C > B,X3: product_prod @ C @ A] :
      ( ( product_snd @ B @ A @ ( product_apfst @ C @ B @ A @ F @ X3 ) )
      = ( product_snd @ C @ A @ X3 ) ) ).

% snd_apfst
thf(fact_155_fst__apsnd,axiom,
    ! [B: $tType,C: $tType,A: $tType,F: C > B,X3: product_prod @ A @ C] :
      ( ( product_fst @ A @ B @ ( product_apsnd @ C @ B @ A @ F @ X3 ) )
      = ( product_fst @ A @ C @ X3 ) ) ).

% fst_apsnd
thf(fact_156_snd__apsnd,axiom,
    ! [A: $tType,C: $tType,B: $tType,F: C > A,X3: product_prod @ B @ C] :
      ( ( product_snd @ B @ A @ ( product_apsnd @ C @ A @ B @ F @ X3 ) )
      = ( F @ ( product_snd @ B @ C @ X3 ) ) ) ).

% snd_apsnd
thf(fact_157_apsnd__eq__conv,axiom,
    ! [B: $tType,C: $tType,A: $tType,F: C > B,X3: product_prod @ A @ C,G3: C > B] :
      ( ( ( product_apsnd @ C @ B @ A @ F @ X3 )
        = ( product_apsnd @ C @ B @ A @ G3 @ X3 ) )
      = ( ( F @ ( product_snd @ A @ C @ X3 ) )
        = ( G3 @ ( product_snd @ A @ C @ X3 ) ) ) ) ).

% apsnd_eq_conv
thf(fact_158_prod_Ocollapse,axiom,
    ! [B: $tType,A: $tType,Prod: product_prod @ A @ B] :
      ( ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_159_snd__swap,axiom,
    ! [B: $tType,A: $tType,X3: product_prod @ A @ B] :
      ( ( product_snd @ B @ A @ ( product_swap @ A @ B @ X3 ) )
      = ( product_fst @ A @ B @ X3 ) ) ).

% snd_swap
thf(fact_160_fst__swap,axiom,
    ! [A: $tType,B: $tType,X3: product_prod @ B @ A] :
      ( ( product_fst @ A @ B @ ( product_swap @ B @ A @ X3 ) )
      = ( product_snd @ B @ A @ X3 ) ) ).

% fst_swap
thf(fact_161_apfst__apsnd,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,F: C > A,G3: D > B,X3: product_prod @ C @ D] :
      ( ( product_apfst @ C @ A @ B @ F @ ( product_apsnd @ D @ B @ C @ G3 @ X3 ) )
      = ( product_Pair @ A @ B @ ( F @ ( product_fst @ C @ D @ X3 ) ) @ ( G3 @ ( product_snd @ C @ D @ X3 ) ) ) ) ).

% apfst_apsnd
thf(fact_162_apsnd__apfst,axiom,
    ! [A: $tType,B: $tType,C: $tType,D: $tType,F: C > B,G3: D > A,X3: product_prod @ D @ C] :
      ( ( product_apsnd @ C @ B @ A @ F @ ( product_apfst @ D @ A @ C @ G3 @ X3 ) )
      = ( product_Pair @ A @ B @ ( G3 @ ( product_fst @ D @ C @ X3 ) ) @ ( F @ ( product_snd @ D @ C @ X3 ) ) ) ) ).

% apsnd_apfst
thf(fact_163_surjective__pairing,axiom,
    ! [B: $tType,A: $tType,T2: product_prod @ A @ B] :
      ( T2
      = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ T2 ) @ ( product_snd @ A @ B @ T2 ) ) ) ).

% surjective_pairing
thf(fact_164_prod_Oexhaust__sel,axiom,
    ! [B: $tType,A: $tType,Prod: product_prod @ A @ B] :
      ( Prod
      = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_165_prod_Osplit__sel__asm,axiom,
    ! [C: $tType,B: $tType,A: $tType,P2: C > $o,F: A > B > C,Prod: product_prod @ A @ B] :
      ( ( P2 @ ( product_case_prod @ A @ B @ C @ F @ Prod ) )
      = ( ~ ( ( Prod
              = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) )
            & ~ ( P2 @ ( F @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) ) ) ) ) ).

% prod.split_sel_asm
thf(fact_166_prod_Osplit__sel,axiom,
    ! [C: $tType,B: $tType,A: $tType,P2: C > $o,F: A > B > C,Prod: product_prod @ A @ B] :
      ( ( P2 @ ( product_case_prod @ A @ B @ C @ F @ Prod ) )
      = ( ( Prod
          = ( product_Pair @ A @ B @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) )
       => ( P2 @ ( F @ ( product_fst @ A @ B @ Prod ) @ ( product_snd @ A @ B @ Prod ) ) ) ) ) ).

% prod.split_sel
thf(fact_167_prod__eqI,axiom,
    ! [B: $tType,A: $tType,P: product_prod @ A @ B,Q4: product_prod @ A @ B] :
      ( ( ( product_fst @ A @ B @ P )
        = ( product_fst @ A @ B @ Q4 ) )
     => ( ( ( product_snd @ A @ B @ P )
          = ( product_snd @ A @ B @ Q4 ) )
       => ( P = Q4 ) ) ) ).

% prod_eqI
thf(fact_168_prod_Oexpand,axiom,
    ! [B: $tType,A: $tType,Prod: product_prod @ A @ B,Prod2: product_prod @ A @ B] :
      ( ( ( ( product_fst @ A @ B @ Prod )
          = ( product_fst @ A @ B @ Prod2 ) )
        & ( ( product_snd @ A @ B @ Prod )
          = ( product_snd @ A @ B @ Prod2 ) ) )
     => ( Prod = Prod2 ) ) ).

% prod.expand
thf(fact_169_prod__eq__iff,axiom,
    ! [B: $tType,A: $tType] :
      ( ( ^ [Y4: product_prod @ A @ B,Z: product_prod @ A @ B] : Y4 = Z )
      = ( ^ [S3: product_prod @ A @ B,T3: product_prod @ A @ B] :
            ( ( ( product_fst @ A @ B @ S3 )
              = ( product_fst @ A @ B @ T3 ) )
            & ( ( product_snd @ A @ B @ S3 )
              = ( product_snd @ A @ B @ T3 ) ) ) ) ) ).

% prod_eq_iff
thf(fact_170_case__prod__beta,axiom,
    ! [A: $tType,C: $tType,B: $tType] :
      ( ( product_case_prod @ B @ C @ A )
      = ( ^ [F4: B > C > A,P6: product_prod @ B @ C] : ( F4 @ ( product_fst @ B @ C @ P6 ) @ ( product_snd @ B @ C @ P6 ) ) ) ) ).

% case_prod_beta
thf(fact_171_prod_Ocase__eq__if,axiom,
    ! [C: $tType,B: $tType,A: $tType] :
      ( ( product_case_prod @ A @ B @ C )
      = ( ^ [F4: A > B > C,Prod3: product_prod @ A @ B] : ( F4 @ ( product_fst @ A @ B @ Prod3 ) @ ( product_snd @ A @ B @ Prod3 ) ) ) ) ).

% prod.case_eq_if
thf(fact_172_Product__Type_OCollect__case__prodD,axiom,
    ! [B: $tType,A: $tType,X3: product_prod @ A @ B,A6: A > B > $o] :
      ( ( member @ ( product_prod @ A @ B ) @ X3 @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ A6 ) ) )
     => ( A6 @ ( product_fst @ A @ B @ X3 ) @ ( product_snd @ A @ B @ X3 ) ) ) ).

% Product_Type.Collect_case_prodD
thf(fact_173_fst__conv,axiom,
    ! [B: $tType,A: $tType,X1: A,X2: B] :
      ( ( product_fst @ A @ B @ ( product_Pair @ A @ B @ X1 @ X2 ) )
      = X1 ) ).

% fst_conv
thf(fact_174_fst__eqD,axiom,
    ! [B: $tType,A: $tType,X3: A,Y: B,A2: A] :
      ( ( ( product_fst @ A @ B @ ( product_Pair @ A @ B @ X3 @ Y ) )
        = A2 )
     => ( X3 = A2 ) ) ).

% fst_eqD
thf(fact_175_snd__conv,axiom,
    ! [Aa2: $tType,A: $tType,X1: Aa2,X2: A] :
      ( ( product_snd @ Aa2 @ A @ ( product_Pair @ Aa2 @ A @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_176_snd__eqD,axiom,
    ! [B: $tType,A: $tType,X3: B,Y: A,A2: A] :
      ( ( ( product_snd @ B @ A @ ( product_Pair @ B @ A @ X3 @ Y ) )
        = A2 )
     => ( Y = A2 ) ) ).

% snd_eqD
thf(fact_177_prod_Oswap__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( product_swap @ A @ B )
      = ( ^ [P6: product_prod @ A @ B] : ( product_Pair @ B @ A @ ( product_snd @ A @ B @ P6 ) @ ( product_fst @ A @ B @ P6 ) ) ) ) ).

% prod.swap_def
thf(fact_178_inj__on__the__inv__into,axiom,
    ! [B: $tType,A: $tType,F: A > B,A6: set @ A] :
      ( ( inj_on @ A @ B @ F @ A6 )
     => ( inj_on @ B @ A @ ( the_inv_into @ A @ B @ A6 @ F ) @ ( image @ A @ B @ F @ A6 ) ) ) ).

% inj_on_the_inv_into
thf(fact_179_f__the__inv__into__f,axiom,
    ! [A: $tType,B: $tType,F: A > B,A6: set @ A,Y: B] :
      ( ( inj_on @ A @ B @ F @ A6 )
     => ( ( member @ B @ Y @ ( image @ A @ B @ F @ A6 ) )
       => ( ( F @ ( the_inv_into @ A @ B @ A6 @ F @ Y ) )
          = Y ) ) ) ).

% f_the_inv_into_f
thf(fact_180_the__inv__f__f,axiom,
    ! [B: $tType,A: $tType,F: A > B,X3: A] :
      ( ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
     => ( ( the_inv_into @ A @ B @ ( top_top @ ( set @ A ) ) @ F @ ( F @ X3 ) )
        = X3 ) ) ).

% the_inv_f_f
thf(fact_181_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [B: $tType,A: $tType,P2: A > B > $o,X3: A,Y: B,A2: product_prod @ A @ B] :
      ( ( P2 @ X3 @ Y )
     => ( ( A2
          = ( product_Pair @ A @ B @ X3 @ Y ) )
       => ( P2 @ ( product_fst @ A @ B @ A2 ) @ ( product_snd @ A @ B @ A2 ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_182_conjI__realizer,axiom,
    ! [A: $tType,B: $tType,P2: A > $o,P: A,Q: B > $o,Q4: B] :
      ( ( P2 @ P )
     => ( ( Q @ Q4 )
       => ( ( P2 @ ( product_fst @ A @ B @ ( product_Pair @ A @ B @ P @ Q4 ) ) )
          & ( Q @ ( product_snd @ A @ B @ ( product_Pair @ A @ B @ P @ Q4 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_183_exI__realizer,axiom,
    ! [B: $tType,A: $tType,P2: A > B > $o,Y: A,X3: B] :
      ( ( P2 @ Y @ X3 )
     => ( P2 @ ( product_snd @ B @ A @ ( product_Pair @ B @ A @ X3 @ Y ) ) @ ( product_fst @ B @ A @ ( product_Pair @ B @ A @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_184_eq__snd__iff,axiom,
    ! [A: $tType,B: $tType,B2: A,P: product_prod @ B @ A] :
      ( ( B2
        = ( product_snd @ B @ A @ P ) )
      = ( ? [A5: B] :
            ( P
            = ( product_Pair @ B @ A @ A5 @ B2 ) ) ) ) ).

% eq_snd_iff
thf(fact_185_sndI,axiom,
    ! [A: $tType,B: $tType,X3: product_prod @ A @ B,Y: A,Z2: B] :
      ( ( X3
        = ( product_Pair @ A @ B @ Y @ Z2 ) )
     => ( ( product_snd @ A @ B @ X3 )
        = Z2 ) ) ).

% sndI
thf(fact_186_eq__fst__iff,axiom,
    ! [A: $tType,B: $tType,A2: A,P: product_prod @ A @ B] :
      ( ( A2
        = ( product_fst @ A @ B @ P ) )
      = ( ? [B5: B] :
            ( P
            = ( product_Pair @ A @ B @ A2 @ B5 ) ) ) ) ).

% eq_fst_iff
thf(fact_187_fstI,axiom,
    ! [B: $tType,A: $tType,X3: product_prod @ A @ B,Y: A,Z2: B] :
      ( ( X3
        = ( product_Pair @ A @ B @ Y @ Z2 ) )
     => ( ( product_fst @ A @ B @ X3 )
        = Y ) ) ).

% fstI
thf(fact_188_Collect__split__mono__strong,axiom,
    ! [B: $tType,A: $tType,X7: set @ A,A6: set @ ( product_prod @ A @ B ),Y8: set @ B,P2: A > B > $o,Q: A > B > $o] :
      ( ( X7
        = ( image @ ( product_prod @ A @ B ) @ A @ ( product_fst @ A @ B ) @ A6 ) )
     => ( ( Y8
          = ( image @ ( product_prod @ A @ B ) @ B @ ( product_snd @ A @ B ) @ A6 ) )
       => ( ! [X: A] :
              ( ( member @ A @ X @ X7 )
             => ! [Xa3: B] :
                  ( ( member @ B @ Xa3 @ Y8 )
                 => ( ( P2 @ X @ Xa3 )
                   => ( Q @ X @ Xa3 ) ) ) )
         => ( ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ A6 @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ P2 ) ) )
           => ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ A6 @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ Q ) ) ) ) ) ) ) ).

% Collect_split_mono_strong
thf(fact_189_sndOp__def,axiom,
    ! [B: $tType,A: $tType,C: $tType] :
      ( ( bNF_sndOp @ C @ A @ B )
      = ( ^ [P3: C > A > $o,Q3: A > B > $o,Ac: product_prod @ C @ B] : ( product_Pair @ A @ B @ ( bNF_pick_middlep @ C @ A @ B @ P3 @ Q3 @ ( product_fst @ C @ B @ Ac ) @ ( product_snd @ C @ B @ Ac ) ) @ ( product_snd @ C @ B @ Ac ) ) ) ) ).

% sndOp_def
thf(fact_190_fstOp__def,axiom,
    ! [C: $tType,B: $tType,A: $tType] :
      ( ( bNF_fstOp @ A @ B @ C )
      = ( ^ [P3: A > B > $o,Q3: B > C > $o,Ac: product_prod @ A @ C] : ( product_Pair @ A @ B @ ( product_fst @ A @ C @ Ac ) @ ( bNF_pick_middlep @ A @ B @ C @ P3 @ Q3 @ ( product_fst @ A @ C @ Ac ) @ ( product_snd @ A @ C @ Ac ) ) ) ) ) ).

% fstOp_def
thf(fact_191_subset__antisym,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
     => ( ( ord_less_eq @ ( set @ A ) @ B6 @ A6 )
       => ( A6 = B6 ) ) ) ).

% subset_antisym
thf(fact_192_subsetI,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A] :
      ( ! [X: A] :
          ( ( member @ A @ X @ A6 )
         => ( member @ A @ X @ B6 ) )
     => ( ord_less_eq @ ( set @ A ) @ A6 @ B6 ) ) ).

% subsetI
thf(fact_193_inj__on__image__mem__iff__alt,axiom,
    ! [B: $tType,A: $tType,F: A > B,B6: set @ A,A6: set @ A,A2: A] :
      ( ( inj_on @ A @ B @ F @ B6 )
     => ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
       => ( ( member @ B @ ( F @ A2 ) @ ( image @ A @ B @ F @ A6 ) )
         => ( ( member @ A @ A2 @ B6 )
           => ( member @ A @ A2 @ A6 ) ) ) ) ) ).

% inj_on_image_mem_iff_alt
thf(fact_194_inj__on__image__mem__iff,axiom,
    ! [B: $tType,A: $tType,F: A > B,B6: set @ A,A2: A,A6: set @ A] :
      ( ( inj_on @ A @ B @ F @ B6 )
     => ( ( member @ A @ A2 @ B6 )
       => ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
         => ( ( member @ B @ ( F @ A2 ) @ ( image @ A @ B @ F @ A6 ) )
            = ( member @ A @ A2 @ A6 ) ) ) ) ) ).

% inj_on_image_mem_iff
thf(fact_195_inj__on__image__eq__iff,axiom,
    ! [B: $tType,A: $tType,F: A > B,C4: set @ A,A6: set @ A,B6: set @ A] :
      ( ( inj_on @ A @ B @ F @ C4 )
     => ( ( ord_less_eq @ ( set @ A ) @ A6 @ C4 )
       => ( ( ord_less_eq @ ( set @ A ) @ B6 @ C4 )
         => ( ( ( image @ A @ B @ F @ A6 )
              = ( image @ A @ B @ F @ B6 ) )
            = ( A6 = B6 ) ) ) ) ) ).

% inj_on_image_eq_iff
thf(fact_196_image__mono,axiom,
    ! [B: $tType,A: $tType,A6: set @ A,B6: set @ A,F: A > B] :
      ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
     => ( ord_less_eq @ ( set @ B ) @ ( image @ A @ B @ F @ A6 ) @ ( image @ A @ B @ F @ B6 ) ) ) ).

% image_mono
thf(fact_197_image__subsetI,axiom,
    ! [A: $tType,B: $tType,A6: set @ A,F: A > B,B6: set @ B] :
      ( ! [X: A] :
          ( ( member @ A @ X @ A6 )
         => ( member @ B @ ( F @ X ) @ B6 ) )
     => ( ord_less_eq @ ( set @ B ) @ ( image @ A @ B @ F @ A6 ) @ B6 ) ) ).

% image_subsetI
thf(fact_198_subset__imageE,axiom,
    ! [A: $tType,B: $tType,B6: set @ A,F: B > A,A6: set @ B] :
      ( ( ord_less_eq @ ( set @ A ) @ B6 @ ( image @ B @ A @ F @ A6 ) )
     => ~ ! [C5: set @ B] :
            ( ( ord_less_eq @ ( set @ B ) @ C5 @ A6 )
           => ( B6
             != ( image @ B @ A @ F @ C5 ) ) ) ) ).

% subset_imageE
thf(fact_199_image__subset__iff,axiom,
    ! [A: $tType,B: $tType,F: B > A,A6: set @ B,B6: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ ( image @ B @ A @ F @ A6 ) @ B6 )
      = ( ! [X4: B] :
            ( ( member @ B @ X4 @ A6 )
           => ( member @ A @ ( F @ X4 ) @ B6 ) ) ) ) ).

% image_subset_iff
thf(fact_200_subset__image__iff,axiom,
    ! [A: $tType,B: $tType,B6: set @ A,F: B > A,A6: set @ B] :
      ( ( ord_less_eq @ ( set @ A ) @ B6 @ ( image @ B @ A @ F @ A6 ) )
      = ( ? [AA: set @ B] :
            ( ( ord_less_eq @ ( set @ B ) @ AA @ A6 )
            & ( B6
              = ( image @ B @ A @ F @ AA ) ) ) ) ) ).

% subset_image_iff
thf(fact_201_subrelI,axiom,
    ! [B: $tType,A: $tType,R: set @ ( product_prod @ A @ B ),S: set @ ( product_prod @ A @ B )] :
      ( ! [X: A,Y3: B] :
          ( ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X @ Y3 ) @ R )
         => ( member @ ( product_prod @ A @ B ) @ ( product_Pair @ A @ B @ X @ Y3 ) @ S ) )
     => ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ R @ S ) ) ).

% subrelI
thf(fact_202_wf__subset,axiom,
    ! [A: $tType,R: set @ ( product_prod @ A @ A ),P: set @ ( product_prod @ A @ A )] :
      ( ( wf @ A @ R )
     => ( ( ord_less_eq @ ( set @ ( product_prod @ A @ A ) ) @ P @ R )
       => ( wf @ A @ P ) ) ) ).

% wf_subset
thf(fact_203_Collect__mono__iff,axiom,
    ! [A: $tType,P2: A > $o,Q: A > $o] :
      ( ( ord_less_eq @ ( set @ A ) @ ( collect @ A @ P2 ) @ ( collect @ A @ Q ) )
      = ( ! [X4: A] :
            ( ( P2 @ X4 )
           => ( Q @ X4 ) ) ) ) ).

% Collect_mono_iff
thf(fact_204_contra__subsetD,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A,C3: A] :
      ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
     => ( ~ ( member @ A @ C3 @ B6 )
       => ~ ( member @ A @ C3 @ A6 ) ) ) ).

% contra_subsetD
thf(fact_205_set__eq__subset,axiom,
    ! [A: $tType] :
      ( ( ^ [Y4: set @ A,Z: set @ A] : Y4 = Z )
      = ( ^ [A7: set @ A,B7: set @ A] :
            ( ( ord_less_eq @ ( set @ A ) @ A7 @ B7 )
            & ( ord_less_eq @ ( set @ A ) @ B7 @ A7 ) ) ) ) ).

% set_eq_subset
thf(fact_206_subset__trans,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A,C4: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
     => ( ( ord_less_eq @ ( set @ A ) @ B6 @ C4 )
       => ( ord_less_eq @ ( set @ A ) @ A6 @ C4 ) ) ) ).

% subset_trans
thf(fact_207_Collect__mono,axiom,
    ! [A: $tType,P2: A > $o,Q: A > $o] :
      ( ! [X: A] :
          ( ( P2 @ X )
         => ( Q @ X ) )
     => ( ord_less_eq @ ( set @ A ) @ ( collect @ A @ P2 ) @ ( collect @ A @ Q ) ) ) ).

% Collect_mono
thf(fact_208_subset__refl,axiom,
    ! [A: $tType,A6: set @ A] : ( ord_less_eq @ ( set @ A ) @ A6 @ A6 ) ).

% subset_refl
thf(fact_209_rev__subsetD,axiom,
    ! [A: $tType,C3: A,A6: set @ A,B6: set @ A] :
      ( ( member @ A @ C3 @ A6 )
     => ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
       => ( member @ A @ C3 @ B6 ) ) ) ).

% rev_subsetD
thf(fact_210_subset__iff,axiom,
    ! [A: $tType] :
      ( ( ord_less_eq @ ( set @ A ) )
      = ( ^ [A7: set @ A,B7: set @ A] :
          ! [T3: A] :
            ( ( member @ A @ T3 @ A7 )
           => ( member @ A @ T3 @ B7 ) ) ) ) ).

% subset_iff
thf(fact_211_set__rev__mp,axiom,
    ! [A: $tType,X3: A,A6: set @ A,B6: set @ A] :
      ( ( member @ A @ X3 @ A6 )
     => ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
       => ( member @ A @ X3 @ B6 ) ) ) ).

% set_rev_mp
thf(fact_212_equalityD2,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A] :
      ( ( A6 = B6 )
     => ( ord_less_eq @ ( set @ A ) @ B6 @ A6 ) ) ).

% equalityD2
thf(fact_213_equalityD1,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A] :
      ( ( A6 = B6 )
     => ( ord_less_eq @ ( set @ A ) @ A6 @ B6 ) ) ).

% equalityD1
thf(fact_214_subset__eq,axiom,
    ! [A: $tType] :
      ( ( ord_less_eq @ ( set @ A ) )
      = ( ^ [A7: set @ A,B7: set @ A] :
          ! [X4: A] :
            ( ( member @ A @ X4 @ A7 )
           => ( member @ A @ X4 @ B7 ) ) ) ) ).

% subset_eq
thf(fact_215_equalityE,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A] :
      ( ( A6 = B6 )
     => ~ ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
         => ~ ( ord_less_eq @ ( set @ A ) @ B6 @ A6 ) ) ) ).

% equalityE
thf(fact_216_subsetCE,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A,C3: A] :
      ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
     => ( ( member @ A @ C3 @ A6 )
       => ( member @ A @ C3 @ B6 ) ) ) ).

% subsetCE
thf(fact_217_subsetD,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A,C3: A] :
      ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
     => ( ( member @ A @ C3 @ A6 )
       => ( member @ A @ C3 @ B6 ) ) ) ).

% subsetD
thf(fact_218_in__mono,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A,X3: A] :
      ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
     => ( ( member @ A @ X3 @ A6 )
       => ( member @ A @ X3 @ B6 ) ) ) ).

% in_mono
thf(fact_219_set__mp,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A,X3: A] :
      ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
     => ( ( member @ A @ X3 @ A6 )
       => ( member @ A @ X3 @ B6 ) ) ) ).

% set_mp
thf(fact_220_subset__UNIV,axiom,
    ! [A: $tType,A6: set @ A] : ( ord_less_eq @ ( set @ A ) @ A6 @ ( top_top @ ( set @ A ) ) ) ).

% subset_UNIV
thf(fact_221_top_Oextremum__uniqueI,axiom,
    ! [A: $tType] :
      ( ( order_top @ A @ ( type2 @ A ) )
     => ! [A2: A] :
          ( ( ord_less_eq @ A @ ( top_top @ A ) @ A2 )
         => ( A2
            = ( top_top @ A ) ) ) ) ).

% top.extremum_uniqueI
thf(fact_222_top_Oextremum__unique,axiom,
    ! [A: $tType] :
      ( ( order_top @ A @ ( type2 @ A ) )
     => ! [A2: A] :
          ( ( ord_less_eq @ A @ ( top_top @ A ) @ A2 )
          = ( A2
            = ( top_top @ A ) ) ) ) ).

% top.extremum_unique
thf(fact_223_top__greatest,axiom,
    ! [A: $tType] :
      ( ( order_top @ A @ ( type2 @ A ) )
     => ! [A2: A] : ( ord_less_eq @ A @ A2 @ ( top_top @ A ) ) ) ).

% top_greatest
thf(fact_224_Sup__subset__mono,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A6: set @ A,B6: set @ A] :
          ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
         => ( ord_less_eq @ A @ ( complete_Sup_Sup @ A @ A6 ) @ ( complete_Sup_Sup @ A @ B6 ) ) ) ) ).

% Sup_subset_mono
thf(fact_225_Sup__upper2,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [U: A,A6: set @ A,V: A] :
          ( ( member @ A @ U @ A6 )
         => ( ( ord_less_eq @ A @ V @ U )
           => ( ord_less_eq @ A @ V @ ( complete_Sup_Sup @ A @ A6 ) ) ) ) ) ).

% Sup_upper2
thf(fact_226_Sup__le__iff,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A6: set @ A,B2: A] :
          ( ( ord_less_eq @ A @ ( complete_Sup_Sup @ A @ A6 ) @ B2 )
          = ( ! [X4: A] :
                ( ( member @ A @ X4 @ A6 )
               => ( ord_less_eq @ A @ X4 @ B2 ) ) ) ) ) ).

% Sup_le_iff
thf(fact_227_Sup__upper,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [X3: A,A6: set @ A] :
          ( ( member @ A @ X3 @ A6 )
         => ( ord_less_eq @ A @ X3 @ ( complete_Sup_Sup @ A @ A6 ) ) ) ) ).

% Sup_upper
thf(fact_228_Sup__least,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A6: set @ A,Z2: A] :
          ( ! [X: A] :
              ( ( member @ A @ X @ A6 )
             => ( ord_less_eq @ A @ X @ Z2 ) )
         => ( ord_less_eq @ A @ ( complete_Sup_Sup @ A @ A6 ) @ Z2 ) ) ) ).

% Sup_least
thf(fact_229_Sup__mono,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A6: set @ A,B6: set @ A] :
          ( ! [A4: A] :
              ( ( member @ A @ A4 @ A6 )
             => ? [X6: A] :
                  ( ( member @ A @ X6 @ B6 )
                  & ( ord_less_eq @ A @ A4 @ X6 ) ) )
         => ( ord_less_eq @ A @ ( complete_Sup_Sup @ A @ A6 ) @ ( complete_Sup_Sup @ A @ B6 ) ) ) ) ).

% Sup_mono
thf(fact_230_Sup__eqI,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A6: set @ A,X3: A] :
          ( ! [Y3: A] :
              ( ( member @ A @ Y3 @ A6 )
             => ( ord_less_eq @ A @ Y3 @ X3 ) )
         => ( ! [Y3: A] :
                ( ! [Z4: A] :
                    ( ( member @ A @ Z4 @ A6 )
                   => ( ord_less_eq @ A @ Z4 @ Y3 ) )
               => ( ord_less_eq @ A @ X3 @ Y3 ) )
           => ( ( complete_Sup_Sup @ A @ A6 )
              = X3 ) ) ) ) ).

% Sup_eqI
thf(fact_231_Union__upper,axiom,
    ! [A: $tType,B6: set @ A,A6: set @ ( set @ A )] :
      ( ( member @ ( set @ A ) @ B6 @ A6 )
     => ( ord_less_eq @ ( set @ A ) @ B6 @ ( complete_Sup_Sup @ ( set @ A ) @ A6 ) ) ) ).

% Union_upper
thf(fact_232_Union__least,axiom,
    ! [A: $tType,A6: set @ ( set @ A ),C4: set @ A] :
      ( ! [X8: set @ A] :
          ( ( member @ ( set @ A ) @ X8 @ A6 )
         => ( ord_less_eq @ ( set @ A ) @ X8 @ C4 ) )
     => ( ord_less_eq @ ( set @ A ) @ ( complete_Sup_Sup @ ( set @ A ) @ A6 ) @ C4 ) ) ).

% Union_least
thf(fact_233_Union__mono,axiom,
    ! [A: $tType,A6: set @ ( set @ A ),B6: set @ ( set @ A )] :
      ( ( ord_less_eq @ ( set @ ( set @ A ) ) @ A6 @ B6 )
     => ( ord_less_eq @ ( set @ A ) @ ( complete_Sup_Sup @ ( set @ A ) @ A6 ) @ ( complete_Sup_Sup @ ( set @ A ) @ B6 ) ) ) ).

% Union_mono
thf(fact_234_SUP__eq,axiom,
    ! [B: $tType,A: $tType,C: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A6: set @ B,B6: set @ C,F: B > A,G3: C > A] :
          ( ! [I: B] :
              ( ( member @ B @ I @ A6 )
             => ? [X6: C] :
                  ( ( member @ C @ X6 @ B6 )
                  & ( ord_less_eq @ A @ ( F @ I ) @ ( G3 @ X6 ) ) ) )
         => ( ! [J: C] :
                ( ( member @ C @ J @ B6 )
               => ? [X6: B] :
                    ( ( member @ B @ X6 @ A6 )
                    & ( ord_less_eq @ A @ ( G3 @ J ) @ ( F @ X6 ) ) ) )
           => ( ( complete_Sup_Sup @ A @ ( image @ B @ A @ F @ A6 ) )
              = ( complete_Sup_Sup @ A @ ( image @ C @ A @ G3 @ B6 ) ) ) ) ) ) ).

% SUP_eq
thf(fact_235_inj__image__subset__iff,axiom,
    ! [B: $tType,A: $tType,F: A > B,A6: set @ A,B6: set @ A] :
      ( ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
     => ( ( ord_less_eq @ ( set @ B ) @ ( image @ A @ B @ F @ A6 ) @ ( image @ A @ B @ F @ B6 ) )
        = ( ord_less_eq @ ( set @ A ) @ A6 @ B6 ) ) ) ).

% inj_image_subset_iff
thf(fact_236_the__inv__into__into,axiom,
    ! [B: $tType,A: $tType,F: A > B,A6: set @ A,X3: B,B6: set @ A] :
      ( ( inj_on @ A @ B @ F @ A6 )
     => ( ( member @ B @ X3 @ ( image @ A @ B @ F @ A6 ) )
       => ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
         => ( member @ A @ ( the_inv_into @ A @ B @ A6 @ F @ X3 ) @ B6 ) ) ) ) ).

% the_inv_into_into
thf(fact_237_Zorn__Lemma,axiom,
    ! [A: $tType,A6: set @ ( set @ A )] :
      ( ! [X: set @ ( set @ A )] :
          ( ( member @ ( set @ ( set @ A ) ) @ X @ ( chains2 @ A @ A6 ) )
         => ( member @ ( set @ A ) @ ( complete_Sup_Sup @ ( set @ A ) @ X ) @ A6 ) )
     => ? [X: set @ A] :
          ( ( member @ ( set @ A ) @ X @ A6 )
          & ! [Xa: set @ A] :
              ( ( member @ ( set @ A ) @ Xa @ A6 )
             => ( ( ord_less_eq @ ( set @ A ) @ X @ Xa )
               => ( Xa = X ) ) ) ) ) ).

% Zorn_Lemma
thf(fact_238_inj__image__Compl__subset,axiom,
    ! [B: $tType,A: $tType,F: A > B,A6: set @ A] :
      ( ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
     => ( ord_less_eq @ ( set @ B ) @ ( image @ A @ B @ F @ ( uminus_uminus @ ( set @ A ) @ A6 ) ) @ ( uminus_uminus @ ( set @ B ) @ ( image @ A @ B @ F @ A6 ) ) ) ) ).

% inj_image_Compl_subset
thf(fact_239_ComplI,axiom,
    ! [A: $tType,C3: A,A6: set @ A] :
      ( ~ ( member @ A @ C3 @ A6 )
     => ( member @ A @ C3 @ ( uminus_uminus @ ( set @ A ) @ A6 ) ) ) ).

% ComplI
thf(fact_240_Compl__iff,axiom,
    ! [A: $tType,C3: A,A6: set @ A] :
      ( ( member @ A @ C3 @ ( uminus_uminus @ ( set @ A ) @ A6 ) )
      = ( ~ ( member @ A @ C3 @ A6 ) ) ) ).

% Compl_iff
thf(fact_241_Compl__eq__Compl__iff,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A] :
      ( ( ( uminus_uminus @ ( set @ A ) @ A6 )
        = ( uminus_uminus @ ( set @ A ) @ B6 ) )
      = ( A6 = B6 ) ) ).

% Compl_eq_Compl_iff
thf(fact_242_Compl__subset__Compl__iff,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ ( uminus_uminus @ ( set @ A ) @ A6 ) @ ( uminus_uminus @ ( set @ A ) @ B6 ) )
      = ( ord_less_eq @ ( set @ A ) @ B6 @ A6 ) ) ).

% Compl_subset_Compl_iff
thf(fact_243_Compl__anti__mono,axiom,
    ! [A: $tType,A6: set @ A,B6: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ A6 @ B6 )
     => ( ord_less_eq @ ( set @ A ) @ ( uminus_uminus @ ( set @ A ) @ B6 ) @ ( uminus_uminus @ ( set @ A ) @ A6 ) ) ) ).

% Compl_anti_mono
thf(fact_244_sp_092_060_094sub_062_092_060mu_062_Orel__mono,axiom,
    ! [A: $tType,C: $tType,G: $tType,D: $tType,B: $tType,R1: A > C > $o,R1a: A > C > $o,R22: B > D > $o,R2a: B > D > $o] :
      ( ( ord_less_eq @ ( A > C > $o ) @ R1 @ R1a )
     => ( ( ord_less_eq @ ( B > D > $o ) @ R22 @ R2a )
       => ( ord_less_eq @ ( ( stream901396144_sp_mu @ G @ A @ B ) > ( stream901396144_sp_mu @ G @ C @ D ) > $o ) @ ( stream1924447089_sp_mu @ A @ C @ B @ D @ G @ R1 @ R22 ) @ ( stream1924447089_sp_mu @ A @ C @ B @ D @ G @ R1a @ R2a ) ) ) ) ).

% sp\<^sub>\<mu>.rel_mono
thf(fact_245_chainsD2,axiom,
    ! [A: $tType,C3: set @ ( set @ A ),S4: set @ ( set @ A )] :
      ( ( member @ ( set @ ( set @ A ) ) @ C3 @ ( chains2 @ A @ S4 ) )
     => ( ord_less_eq @ ( set @ ( set @ A ) ) @ C3 @ S4 ) ) ).

% chainsD2
thf(fact_246_Collect__case__prod__mono,axiom,
    ! [B: $tType,A: $tType,A6: A > B > $o,B6: A > B > $o] :
      ( ( ord_less_eq @ ( A > B > $o ) @ A6 @ B6 )
     => ( ord_less_eq @ ( set @ ( product_prod @ A @ B ) ) @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ A6 ) ) @ ( collect @ ( product_prod @ A @ B ) @ ( product_case_prod @ A @ B @ $o @ B6 ) ) ) ) ).

% Collect_case_prod_mono
thf(fact_247_ComplD,axiom,
    ! [A: $tType,C3: A,A6: set @ A] :
      ( ( member @ A @ C3 @ ( uminus_uminus @ ( set @ A ) @ A6 ) )
     => ~ ( member @ A @ C3 @ A6 ) ) ).

% ComplD
thf(fact_248_double__complement,axiom,
    ! [A: $tType,A6: set @ A] :
      ( ( uminus_uminus @ ( set @ A ) @ ( uminus_uminus @ ( set @ A ) @ A6 ) )
      = A6 ) ).

% double_complement
thf(fact_249_chainsD,axiom,
    ! [A: $tType,C3: set @ ( set @ A ),S4: set @ ( set @ A ),X3: set @ A,Y: set @ A] :
      ( ( member @ ( set @ ( set @ A ) ) @ C3 @ ( chains2 @ A @ S4 ) )
     => ( ( member @ ( set @ A ) @ X3 @ C3 )
       => ( ( member @ ( set @ A ) @ Y @ C3 )
         => ( ( ord_less_eq @ ( set @ A ) @ X3 @ Y )
            | ( ord_less_eq @ ( set @ A ) @ Y @ X3 ) ) ) ) ) ).

% chainsD
thf(fact_250_Zorn__Lemma2,axiom,
    ! [A: $tType,A6: set @ ( set @ A )] :
      ( ! [X: set @ ( set @ A )] :
          ( ( member @ ( set @ ( set @ A ) ) @ X @ ( chains2 @ A @ A6 ) )
         => ? [Xa: set @ A] :
              ( ( member @ ( set @ A ) @ Xa @ A6 )
              & ! [Xb: set @ A] :
                  ( ( member @ ( set @ A ) @ Xb @ X )
                 => ( ord_less_eq @ ( set @ A ) @ Xb @ Xa ) ) ) )
     => ? [X: set @ A] :
          ( ( member @ ( set @ A ) @ X @ A6 )
          & ! [Xa: set @ A] :
              ( ( member @ ( set @ A ) @ Xa @ A6 )
             => ( ( ord_less_eq @ ( set @ A ) @ X @ Xa )
               => ( Xa = X ) ) ) ) ) ).

% Zorn_Lemma2
thf(fact_251_surj__Compl__image__subset,axiom,
    ! [A: $tType,B: $tType,F: B > A,A6: set @ B] :
      ( ( ( image @ B @ A @ F @ ( top_top @ ( set @ B ) ) )
        = ( top_top @ ( set @ A ) ) )
     => ( ord_less_eq @ ( set @ A ) @ ( uminus_uminus @ ( set @ A ) @ ( image @ B @ A @ F @ A6 ) ) @ ( image @ B @ A @ F @ ( uminus_uminus @ ( set @ B ) @ A6 ) ) ) ) ).

% surj_Compl_image_subset
thf(fact_252_mono__Chains,axiom,
    ! [A: $tType,R: set @ ( product_prod @ A @ A ),S: set @ ( product_prod @ A @ A )] :
      ( ( ord_less_eq @ ( set @ ( product_prod @ A @ A ) ) @ R @ S )
     => ( ord_less_eq @ ( set @ ( set @ A ) ) @ ( chains @ A @ R ) @ ( chains @ A @ S ) ) ) ).

% mono_Chains
thf(fact_253_relChain__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( ord @ B @ ( type2 @ B ) )
     => ( ( bNF_Ca1785829860lChain @ A @ B )
        = ( ^ [R3: set @ ( product_prod @ A @ A ),As: A > B] :
            ! [I2: A,J2: A] :
              ( ( member @ ( product_prod @ A @ A ) @ ( product_Pair @ A @ A @ I2 @ J2 ) @ R3 )
             => ( ord_less_eq @ B @ ( As @ I2 ) @ ( As @ J2 ) ) ) ) ) ) ).

% relChain_def
thf(fact_254_chain__subset__def,axiom,
    ! [A: $tType] :
      ( ( chain_subset @ A )
      = ( ^ [C6: set @ ( set @ A )] :
          ! [X4: set @ A] :
            ( ( member @ ( set @ A ) @ X4 @ C6 )
           => ! [Y5: set @ A] :
                ( ( member @ ( set @ A ) @ Y5 @ C6 )
               => ( ( ord_less_eq @ ( set @ A ) @ X4 @ Y5 )
                  | ( ord_less_eq @ ( set @ A ) @ Y5 @ X4 ) ) ) ) ) ) ).

% chain_subset_def
thf(fact_255_vimage__subsetI,axiom,
    ! [B: $tType,A: $tType,F: A > B,B6: set @ B,A6: set @ A] :
      ( ( inj_on @ A @ B @ F @ ( top_top @ ( set @ A ) ) )
     => ( ( ord_less_eq @ ( set @ B ) @ B6 @ ( image @ A @ B @ F @ A6 ) )
       => ( ord_less_eq @ ( set @ A ) @ ( vimage @ A @ B @ F @ B6 ) @ A6 ) ) ) ).

% vimage_subsetI

%----Type constructors (15)
thf(tcon_fun___Complete__Lattices_Ocomplete__lattice,axiom,
    ! [A8: $tType,A9: $tType] :
      ( ( comple187826305attice @ A9 @ ( type2 @ A9 ) )
     => ( comple187826305attice @ ( A8 > A9 ) @ ( type2 @ ( A8 > A9 ) ) ) ) ).

thf(tcon_fun___Complete__Lattices_OSup,axiom,
    ! [A8: $tType,A9: $tType] :
      ( ( complete_Sup @ A9 @ ( type2 @ A9 ) )
     => ( complete_Sup @ ( A8 > A9 ) @ ( type2 @ ( A8 > A9 ) ) ) ) ).

thf(tcon_fun___Orderings_Oorder__top,axiom,
    ! [A8: $tType,A9: $tType] :
      ( ( order_top @ A9 @ ( type2 @ A9 ) )
     => ( order_top @ ( A8 > A9 ) @ ( type2 @ ( A8 > A9 ) ) ) ) ).

thf(tcon_fun___Orderings_Otop,axiom,
    ! [A8: $tType,A9: $tType] :
      ( ( top @ A9 @ ( type2 @ A9 ) )
     => ( top @ ( A8 > A9 ) @ ( type2 @ ( A8 > A9 ) ) ) ) ).

thf(tcon_fun___Orderings_Oord,axiom,
    ! [A8: $tType,A9: $tType] :
      ( ( ord @ A9 @ ( type2 @ A9 ) )
     => ( ord @ ( A8 > A9 ) @ ( type2 @ ( A8 > A9 ) ) ) ) ).

thf(tcon_Set_Oset___Complete__Lattices_Ocomplete__lattice_1,axiom,
    ! [A8: $tType] : ( comple187826305attice @ ( set @ A8 ) @ ( type2 @ ( set @ A8 ) ) ) ).

thf(tcon_Set_Oset___Complete__Lattices_OSup_2,axiom,
    ! [A8: $tType] : ( complete_Sup @ ( set @ A8 ) @ ( type2 @ ( set @ A8 ) ) ) ).

thf(tcon_Set_Oset___Orderings_Oorder__top_3,axiom,
    ! [A8: $tType] : ( order_top @ ( set @ A8 ) @ ( type2 @ ( set @ A8 ) ) ) ).

thf(tcon_Set_Oset___Orderings_Otop_4,axiom,
    ! [A8: $tType] : ( top @ ( set @ A8 ) @ ( type2 @ ( set @ A8 ) ) ) ).

thf(tcon_Set_Oset___Orderings_Oord_5,axiom,
    ! [A8: $tType] : ( ord @ ( set @ A8 ) @ ( type2 @ ( set @ A8 ) ) ) ).

thf(tcon_HOL_Obool___Complete__Lattices_Ocomplete__lattice_6,axiom,
    comple187826305attice @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Complete__Lattices_OSup_7,axiom,
    complete_Sup @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Orderings_Oorder__top_8,axiom,
    order_top @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Orderings_Otop_9,axiom,
    top @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Orderings_Oord_10,axiom,
    ord @ $o @ ( type2 @ $o ) ).

%----Conjectures (4)
thf(conj_0,hypothesis,
    ! [B8: b,Sp2: c,Fsp: stream901396144_sp_mu @ d @ a @ ( stream1273403375_sp_nu @ d @ a )] :
      ( ( x
        = ( product_Pair @ ( stream901396144_sp_mu @ a @ b @ c ) @ ( stream901396144_sp_mu @ d @ a @ ( stream1273403375_sp_nu @ d @ a ) ) @ ( stream1370332830mu_Put @ b @ c @ a @ B8 @ Sp2 ) @ Fsp ) )
     => p ) ).

thf(conj_1,hypothesis,
    ! [F5: a > ( stream901396144_sp_mu @ a @ b @ c ),B8: a,Sp2: stream1273403375_sp_nu @ d @ a] :
      ( ( x
        = ( product_Pair @ ( stream901396144_sp_mu @ a @ b @ c ) @ ( stream901396144_sp_mu @ d @ a @ ( stream1273403375_sp_nu @ d @ a ) ) @ ( stream1294929701mu_Get @ a @ b @ c @ F5 ) @ ( stream1370332830mu_Put @ a @ ( stream1273403375_sp_nu @ d @ a ) @ d @ B8 @ Sp2 ) ) )
     => p ) ).

thf(conj_2,hypothesis,
    ! [F5: a > ( stream901396144_sp_mu @ a @ b @ c ),G4: d > ( stream901396144_sp_mu @ d @ a @ ( stream1273403375_sp_nu @ d @ a ) )] :
      ( ( x
        = ( product_Pair @ ( stream901396144_sp_mu @ a @ b @ c ) @ ( stream901396144_sp_mu @ d @ a @ ( stream1273403375_sp_nu @ d @ a ) ) @ ( stream1294929701mu_Get @ a @ b @ c @ F5 ) @ ( stream1294929701mu_Get @ d @ a @ ( stream1273403375_sp_nu @ d @ a ) @ G4 ) ) )
     => p ) ).

thf(conj_3,conjecture,
    p ).

%------------------------------------------------------------------------------